@@ -74,6 +74,7 @@ export class ExtensionHostProcessWorker implements IExtensionHostStarter {
7474
7575 constructor (
7676 private readonly _extensions : TPromise < IExtensionDescription [ ] > ,
77+ private readonly _logsLocation : TPromise < URI > ,
7778 @IWorkspaceContextService private readonly _contextService : IWorkspaceContextService ,
7879 @INotificationService private readonly _notificationService : INotificationService ,
7980 @IWindowsService private readonly _windowsService : IWindowsService ,
@@ -375,34 +376,35 @@ export class ExtensionHostProcessWorker implements IExtensionHostStarter {
375376 }
376377
377378 private _createExtHostInitData ( ) : TPromise < IInitData > {
378- return TPromise . join ( [ this . _telemetryService . getTelemetryInfo ( ) , this . _extensions ] ) . then ( ( [ telemetryInfo , extensionDescriptions ] ) => {
379- const configurationData : IConfigurationInitData = { ...this . _configurationService . getConfigurationData ( ) , configurationScopes : { } } ;
380- const workspace = this . _contextService . getWorkspace ( ) ;
381- const r : IInitData = {
382- parentPid : process . pid ,
383- environment : {
384- isExtensionDevelopmentDebug : this . _isExtensionDevDebug ,
385- appRoot : this . _environmentService . appRoot ,
386- appSettingsHome : this . _environmentService . appSettingsHome ,
387- extensionDevelopmentLocationURI : this . _environmentService . extensionDevelopmentLocationURI ,
388- extensionTestsPath : this . _environmentService . extensionTestsPath
389- } ,
390- workspace : this . _contextService . getWorkbenchState ( ) === WorkbenchState . EMPTY ? null : {
391- configuration : workspace . configuration ,
392- folders : workspace . folders ,
393- id : workspace . id ,
394- name : this . _labelService . getWorkspaceLabel ( workspace )
395- } ,
396- extensions : extensionDescriptions ,
397- // Send configurations scopes only in development mode.
398- configuration : ! this . _environmentService . isBuilt || this . _environmentService . isExtensionDevelopment ? { ...configurationData , configurationScopes : getScopes ( ) } : configurationData ,
399- telemetryInfo,
400- windowId : this . _windowService . getCurrentWindowId ( ) ,
401- logLevel : this . _logService . getLevel ( ) ,
402- logsPath : this . _environmentService . logsPath
403- } ;
404- return r ;
405- } ) ;
379+ const promises : TPromise [ ] = [ this . _telemetryService . getTelemetryInfo ( ) , this . _extensions , this . _logsLocation ] ;
380+ return TPromise . join ( promises )
381+ . then ( ( [ telemetryInfo , extensionDescriptions , logsLocation ] ) => {
382+ const configurationData : IConfigurationInitData = { ...this . _configurationService . getConfigurationData ( ) , configurationScopes : { } } ;
383+ const workspace = this . _contextService . getWorkspace ( ) ;
384+ const r : IInitData = {
385+ parentPid : process . pid ,
386+ environment : {
387+ isExtensionDevelopmentDebug : this . _isExtensionDevDebug ,
388+ appRoot : this . _environmentService . appRoot ,
389+ appSettingsHome : this . _environmentService . appSettingsHome ,
390+ extensionDevelopmentLocationURI : this . _environmentService . extensionDevelopmentLocationURI ,
391+ extensionTestsPath : this . _environmentService . extensionTestsPath
392+ } ,
393+ workspace : this . _contextService . getWorkbenchState ( ) === WorkbenchState . EMPTY ? null : {
394+ configuration : workspace . configuration ,
395+ folders : workspace . folders ,
396+ id : workspace . id ,
397+ name : this . _labelService . getWorkspaceLabel ( workspace )
398+ } ,
399+ extensions : extensionDescriptions ,
400+ // Send configurations scopes only in development mode.
401+ configuration : ! this . _environmentService . isBuilt || this . _environmentService . isExtensionDevelopment ? { ...configurationData , configurationScopes : getScopes ( ) } : configurationData ,
402+ telemetryInfo,
403+ logLevel : this . _logService . getLevel ( ) ,
404+ logsLocation
405+ } ;
406+ return r ;
407+ } ) ;
406408 }
407409
408410 private _logExtensionHostMessage ( entry : IRemoteConsoleLog ) {
0 commit comments