From b7be44e6392b8e5d5fd5908cea5da86e97dd0e2f Mon Sep 17 00:00:00 2001 From: Ladislau Szomoru <3372902+lszomoru@users.noreply.github.com> Date: Mon, 15 May 2023 21:03:27 +0200 Subject: [PATCH] GitHub - fix an issue with toggling branch protection setting (#182536) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * GitHub - fix an issue with toggling branch protection setting * 💄 Remove variable * Pull request feedback --- extensions/git/src/model.ts | 10 +++++----- extensions/git/src/repository.ts | 4 +++- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/extensions/git/src/model.ts b/extensions/git/src/model.ts index 2624ffb4126..360f8401507 100644 --- a/extensions/git/src/model.ts +++ b/extensions/git/src/model.ts @@ -152,7 +152,7 @@ export class Model implements IBranchProtectionProviderRegistry, IRemoteSourcePu private _onDidChangePostCommitCommandsProviders = new EventEmitter(); readonly onDidChangePostCommitCommandsProviders = this._onDidChangePostCommitCommandsProviders.event; - private branchProtectionProviders = new Map>(); + private branchProtectionProviders = new Map>(); private _onDidChangeBranchProtectionProviders = new EventEmitter(); readonly onDidChangeBranchProtectionProviders = this._onDidChangeBranchProtectionProviders.event; @@ -769,17 +769,17 @@ export class Model implements IBranchProtectionProviderRegistry, IRemoteSourcePu registerBranchProtectionProvider(root: Uri, provider: BranchProtectionProvider): Disposable { const providerDisposables: Disposable[] = []; - this.branchProtectionProviders.set(root, (this.branchProtectionProviders.get(root) ?? new Set()).add(provider)); + this.branchProtectionProviders.set(root.toString(), (this.branchProtectionProviders.get(root.toString()) ?? new Set()).add(provider)); providerDisposables.push(provider.onDidChangeBranchProtection(uri => this._onDidChangeBranchProtectionProviders.fire(uri))); this._onDidChangeBranchProtectionProviders.fire(root); return toDisposable(() => { - const providers = this.branchProtectionProviders.get(root); + const providers = this.branchProtectionProviders.get(root.toString()); if (providers && providers.has(provider)) { providers.delete(provider); - this.branchProtectionProviders.set(root, providers); + this.branchProtectionProviders.set(root.toString(), providers); this._onDidChangeBranchProtectionProviders.fire(root); } @@ -788,7 +788,7 @@ export class Model implements IBranchProtectionProviderRegistry, IRemoteSourcePu } getBranchProtectionProviders(root: Uri): BranchProtectionProvider[] { - return [...(this.branchProtectionProviders.get(root) ?? new Set()).values()]; + return [...(this.branchProtectionProviders.get(root.toString()) ?? new Set()).values()]; } registerPostCommitCommandsProvider(provider: PostCommitCommandsProvider): Disposable { diff --git a/extensions/git/src/repository.ts b/extensions/git/src/repository.ts index 724c1152e34..e7ed1cad955 100644 --- a/extensions/git/src/repository.ts +++ b/extensions/git/src/repository.ts @@ -2385,7 +2385,9 @@ export class Repository implements Disposable { } } - this.branchProtection.set(remote, matchers); + if (matchers.length !== 0) { + this.branchProtection.set(remote, matchers); + } } }