diff --git a/extensions/git/src/model.ts b/extensions/git/src/model.ts index 3ceb2dc3fc9..65036c93a7b 100644 --- a/extensions/git/src/model.ts +++ b/extensions/git/src/model.ts @@ -235,10 +235,9 @@ export class Model { if (repository.submodules.length > submodulesLimit) { window.showWarningMessage(localize('too many submodules', "The '{0}' repository has {1} submodules which won't be opened automatically. You can still open each one individually by opening a file within.", path.basename(repository.root), repository.submodules.length)); statusListener.dispose(); - return; } - this.scanSubmodules(repository); + this.scanSubmodules(repository, submodulesLimit); }; const statusListener = repository.onDidRunGitStatus(checkForSubmodules); @@ -260,7 +259,7 @@ export class Model { this._onDidOpenRepository.fire(repository); } - private scanSubmodules(repository: Repository): void { + private scanSubmodules(repository: Repository, limit: number): void { const shouldScanSubmodules = workspace .getConfiguration('git', Uri.file(repository.root)) .get('detectSubmodules') === true; @@ -270,6 +269,7 @@ export class Model { } repository.submodules + .slice(0, limit) .map(r => path.join(repository.root, r.path)) .forEach(p => this.eventuallyScanPossibleGitRepository(p)); }