From 96e9133f9aa8036bb096d23c959d81aa673ba8b8 Mon Sep 17 00:00:00 2001
From: chemzqm <chemzqm@gmail.com>
Date: Fri, 1 Feb 2019 13:06:37 +0800
Subject: [PATCH] use cwd as project root when possible

---
 src/server/typescriptServiceClient.ts | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/server/typescriptServiceClient.ts b/src/server/typescriptServiceClient.ts
index 10b9690..d332e6c 100644
--- a/src/server/typescriptServiceClient.ts
+++ b/src/server/typescriptServiceClient.ts
@@ -814,8 +814,8 @@ export default class TypeScriptServiceClient implements ITypeScriptServiceClient
 
   public getProjectRootPath(uri: string): string {
     let u = Uri.parse(uri)
-    if (u.scheme != 'file') return workspace.root
-    if (u.fsPath.startsWith(workspace.root)) return workspace.root
+    if (u.scheme != 'file') return workspace.cwd
+    if (u.fsPath.startsWith(workspace.root) && workspace.root != os.homedir()) return workspace.cwd
     let res = findUp.sync(['package.json', 'tsconfig.json', 'jsconfig.json'], { cwd: path.dirname(u.fsPath) })
     return res ? path.dirname(res) : workspace.rootPath
   }