diff --git a/extensions/git/src/git.ts b/extensions/git/src/git.ts index 5331b02d6b3..48e5c457c22 100644 --- a/extensions/git/src/git.ts +++ b/extensions/git/src/git.ts @@ -679,7 +679,7 @@ export function parseGitmodules(raw: string): Submodule[] { return; } - const propertyMatch = /^\s*(\w+)\s+=\s+(.*)$/.exec(line); + const propertyMatch = /^\s*(\w+)\s*=\s*(.*)$/.exec(line); if (!propertyMatch) { return; diff --git a/extensions/git/src/test/git.test.ts b/extensions/git/src/test/git.test.ts index 8be262d3c25..4c74e26321b 100644 --- a/extensions/git/src/test/git.test.ts +++ b/extensions/git/src/test/git.test.ts @@ -184,6 +184,17 @@ suite('git', () => { { name: 'deps/spdlog', path: 'deps/spdlog', url: 'https://github.com/gabime/spdlog.git' } ]); }); + + test('whitespace again #108371', () => { + const sample = `[submodule "deps/spdlog"] + path= deps/spdlog + url=https://github.com/gabime/spdlog.git +`; + + assert.deepEqual(parseGitmodules(sample), [ + { name: 'deps/spdlog', path: 'deps/spdlog', url: 'https://github.com/gabime/spdlog.git' } + ]); + }); }); suite('parseGitCommit', () => {