Skip to content

Commit eb2a4df

Browse files
authored
Merge pull request #260554 from microsoft/tyriar/253092
Ensure bash.exe isn't used in wsl discovery
2 parents 737e8bb + 0f00659 commit eb2a4df

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

src/vs/platform/terminal/node/terminalProfiles.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,9 @@ async function detectAvailableWindowsProfiles(
8484
const is32ProcessOn64Windows = process.env.hasOwnProperty('PROCESSOR_ARCHITEW6432');
8585
const system32Path = `${process.env['windir']}\\${is32ProcessOn64Windows ? 'Sysnative' : 'System32'}`;
8686

87-
const useWSLexe = getWindowsBuildNumber() >= 22000;
87+
// WSL 2 released in the May 2020 Update, this is where the `-d` flag was added that we depend
88+
// upon
89+
const allowWslDiscovery = getWindowsBuildNumber() >= 19041;
8890

8991
await initializeWindowsProfiles(testPwshSourcePaths);
9092

@@ -143,9 +145,9 @@ async function detectAvailableWindowsProfiles(
143145

144146
const resultProfiles: ITerminalProfile[] = await transformToTerminalProfiles(detectedProfiles.entries(), defaultProfileName, fsProvider, shellEnv, logService, variableResolver);
145147

146-
if (includeDetectedProfiles && useWslProfiles) {
148+
if (includeDetectedProfiles && useWslProfiles && allowWslDiscovery) {
147149
try {
148-
const result = await getWslProfiles(`${system32Path}\\${useWSLexe ? 'wsl' : 'bash'}.exe`, defaultProfileName);
150+
const result = await getWslProfiles(`${system32Path}\\wsl.exe`, defaultProfileName);
149151
for (const wslProfile of result) {
150152
if (!configProfiles || !(wslProfile.profileName in configProfiles)) {
151153
resultProfiles.push(wslProfile);

0 commit comments

Comments
 (0)