Force inheritEnv in ext debug terminals

Fixes #124041
This commit is contained in:
Daniel Imms
2021-05-25 04:55:02 -07:00
parent 0685a4af28
commit 43b7187c3d
5 changed files with 24 additions and 11 deletions

View File

@@ -98,7 +98,10 @@ export class ExtHostDebugService extends ExtHostDebugServiceBase {
name: args.title || nls.localize('debug.terminal.title', "debuggee"),
};
giveShellTimeToInitialize = true;
terminal = this._terminalService.createTerminalFromOptions(options, true);
terminal = this._terminalService.createTerminalFromOptions(options, {
isFeatureTerminal: true,
useShellEnvironment: true
});
this._integratedTerminalInstances.insert(terminal, shellConfig);
} else {

View File

@@ -6,7 +6,7 @@
import { withNullAsUndefined } from 'vs/base/common/types';
import { generateUuid } from 'vs/base/common/uuid';
import { IExtHostRpcService } from 'vs/workbench/api/common/extHostRpcService';
import { BaseExtHostTerminalService, ExtHostTerminal } from 'vs/workbench/api/common/extHostTerminalService';
import { BaseExtHostTerminalService, ExtHostTerminal, ITerminalInternalOptions } from 'vs/workbench/api/common/extHostTerminalService';
import type * as vscode from 'vscode';
export class ExtHostTerminalService extends BaseExtHostTerminalService {
@@ -24,7 +24,7 @@ export class ExtHostTerminalService extends BaseExtHostTerminalService {
return terminal.value;
}
public createTerminalFromOptions(options: vscode.TerminalOptions, isFeatureTerminal?: boolean): vscode.Terminal {
public createTerminalFromOptions(options: vscode.TerminalOptions, internalOptions?: ITerminalInternalOptions): vscode.Terminal {
const terminal = new ExtHostTerminal(this._proxy, generateUuid(), options, options.name);
this._terminals.push(terminal);
terminal.create(
@@ -37,8 +37,9 @@ export class ExtHostTerminalService extends BaseExtHostTerminalService {
/*options.waitOnExit*/ undefined,
withNullAsUndefined(options.strictEnv),
withNullAsUndefined(options.hideFromUser),
withNullAsUndefined(isFeatureTerminal),
true
withNullAsUndefined(internalOptions?.isFeatureTerminal),
true,
withNullAsUndefined(internalOptions?.useShellEnvironment)
);
return terminal.value;
}