Do not install the watchdog if the extension host is debuggable (#26445)

This commit is contained in:
Alex Dima
2017-08-14 14:26:31 +02:00
parent e5943cbcb0
commit a7fcaffcf4
3 changed files with 7 additions and 2 deletions
@@ -48,6 +48,7 @@ import { ITreeItem } from 'vs/workbench/parts/views/common/views';
import { ThemeColor } from 'vs/platform/theme/common/themeService';
export interface IEnvironment {
isExtensionDevelopmentDebug: boolean;
enableProposedApiForAll: boolean;
enableProposedApiFor: string | string[];
appSettingsHome: string;
@@ -291,9 +291,10 @@ export class ExtensionHostProcessWorker {
private createExtHostInitData(): TPromise<IInitData> {
return TPromise.join<any>([this.telemetryService.getTelemetryInfo(), this.extensionService.getExtensions()]).then(([telemetryInfo, extensionDescriptions]) => {
return <IInitData>{
let r: IInitData = {
parentPid: process.pid,
environment: {
isExtensionDevelopmentDebug: this.isExtensionDevelopmentDebug,
appSettingsHome: this.environmentService.appSettingsHome,
disableExtensions: this.environmentService.disableExtensions,
userExtensionsHome: this.environmentService.extensionsPath,
@@ -308,6 +309,7 @@ export class ExtensionHostProcessWorker {
configuration: this.configurationService.getConfigurationData(),
telemetryInfo
};
return r;
});
}
+3 -1
View File
@@ -54,7 +54,9 @@ export class ExtensionHostMain {
errors.setUnexpectedErrorHandler(err => mainThreadErrors.onUnexpectedExtHostError(errors.transformErrorForSerialization(err)));
// Configure the watchdog to kill our process if the JS event loop is unresponsive for more than 10s
watchdog.start(10000);
if (!initData.environment.isExtensionDevelopmentDebug) {
watchdog.start(10000);
}
}
public start(): TPromise<void> {