File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -14,21 +14,33 @@ namespace ts.server {
1414 } = require ( "child_process" ) ;
1515
1616 const os : {
17- homedir ( ) : string
17+ homedir ?( ) : string ;
18+ tmpdir ( ) : string ;
1819 } = require ( "os" ) ;
1920
20-
2121 function getGlobalTypingsCacheLocation ( ) {
2222 let basePath : string ;
2323 switch ( process . platform ) {
2424 case "win32" :
25- basePath = process . env . LOCALAPPDATA || process . env . APPDATA || os . homedir ( ) ;
25+ basePath = process . env . LOCALAPPDATA ||
26+ process . env . APPDATA ||
27+ ( os . homedir && os . homedir ( ) ) ||
28+ process . env . USERPROFILE ||
29+ ( process . env . HOMEDRIVE && process . env . HOMEPATH && normalizeSlashes ( process . env . HOMEDRIVE + process . env . HOMEPATH ) ) ||
30+ os . tmpdir ( ) ;
2631 break ;
2732 case "linux" :
28- basePath = os . homedir ( ) ;
33+ basePath = ( os . homedir && os . homedir ( ) ) ||
34+ process . env . HOME ||
35+ ( ( process . env . LOGNAME || process . env . USER ) && `/home/${ process . env . LOGNAME || process . env . USER } ` ) ||
36+ os . tmpdir ( ) ;
2937 break ;
3038 case "darwin" :
31- basePath = combinePaths ( os . homedir ( ) , "Library/Application Support/" ) ;
39+ const homeDir = ( os . homedir && os . homedir ( ) ) ||
40+ process . env . HOME ||
41+ ( ( process . env . LOGNAME || process . env . USER ) && `/Users/${ process . env . LOGNAME || process . env . USER } ` ) ||
42+ os . tmpdir ( ) ;
43+ basePath = combinePaths ( homeDir , "Library/Application Support/" ) ;
3244 break ;
3345 }
3446
You can’t perform that action at this time.
0 commit comments