File tree 1 file changed +17
-5
lines changed 1 file changed +17
-5
lines changed Original file line number Diff line number Diff line change @@ -14,21 +14,33 @@ namespace ts.server {
14
14
} = require ( "child_process" ) ;
15
15
16
16
const os : {
17
- homedir ( ) : string
17
+ homedir ?( ) : string ;
18
+ tmpdir ( ) : string ;
18
19
} = require ( "os" ) ;
19
20
20
-
21
21
function getGlobalTypingsCacheLocation ( ) {
22
22
let basePath : string ;
23
23
switch ( process . platform ) {
24
24
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 ( ) ;
26
31
break ;
27
32
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 ( ) ;
29
37
break ;
30
38
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/" ) ;
32
44
break ;
33
45
}
34
46
You can’t perform that action at this time.
0 commit comments