Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
掘金者说
vscode
提交
c403c760
V
vscode
项目概览
掘金者说
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
c403c760
编写于
9月 10, 2018
作者:
J
Joao Moreno
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
remove TPromise from ipc.net
上级
72484fd0
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
23 addition
and
24 deletion
+23
-24
src/vs/base/parts/ipc/node/ipc.net.ts
src/vs/base/parts/ipc/node/ipc.net.ts
+9
-10
src/vs/code/electron-browser/sharedProcess/sharedProcessMain.ts
.../code/electron-browser/sharedProcess/sharedProcessMain.ts
+5
-5
src/vs/code/electron-main/main.ts
src/vs/code/electron-main/main.ts
+9
-9
未找到文件。
src/vs/base/parts/ipc/node/ipc.net.ts
浏览文件 @
c403c760
...
...
@@ -6,7 +6,6 @@
'
use strict
'
;
import
{
Socket
,
Server
as
NetServer
,
createConnection
,
createServer
}
from
'
net
'
;
import
{
TPromise
}
from
'
vs/base/common/winjs.base
'
;
import
{
Event
,
Emitter
,
once
,
mapEvent
,
fromNodeEventEmitter
}
from
'
vs/base/common/event
'
;
import
{
IMessagePassingProtocol
,
ClientConnectionEvent
,
IPCServer
,
IPCClient
}
from
'
vs/base/parts/ipc/node/ipc
'
;
import
{
join
}
from
'
path
'
;
...
...
@@ -247,10 +246,10 @@ export class Client extends IPCClient {
}
}
export
function
serve
(
port
:
number
):
T
Promis
e
<
Server
>
;
export
function
serve
(
namedPipe
:
string
):
T
Promis
e
<
Server
>
;
export
function
serve
(
hook
:
any
):
T
Promis
e
<
Server
>
{
return
new
T
Promise
<
Server
>
((
c
,
e
)
=>
{
export
function
serve
(
port
:
number
):
T
henabl
e
<
Server
>
;
export
function
serve
(
namedPipe
:
string
):
T
henabl
e
<
Server
>
;
export
function
serve
(
hook
:
any
):
T
henabl
e
<
Server
>
{
return
new
Promise
<
Server
>
((
c
,
e
)
=>
{
const
server
=
createServer
();
server
.
on
(
'
error
'
,
e
);
...
...
@@ -261,11 +260,11 @@ export function serve(hook: any): TPromise<Server> {
});
}
export
function
connect
(
options
:
{
host
:
string
,
port
:
number
},
clientId
:
string
):
T
Promis
e
<
Client
>
;
export
function
connect
(
port
:
number
,
clientId
:
string
):
T
Promis
e
<
Client
>
;
export
function
connect
(
namedPipe
:
string
,
clientId
:
string
):
T
Promis
e
<
Client
>
;
export
function
connect
(
hook
:
any
,
clientId
:
string
):
T
Promis
e
<
Client
>
{
return
new
T
Promise
<
Client
>
((
c
,
e
)
=>
{
export
function
connect
(
options
:
{
host
:
string
,
port
:
number
},
clientId
:
string
):
T
henabl
e
<
Client
>
;
export
function
connect
(
port
:
number
,
clientId
:
string
):
T
henabl
e
<
Client
>
;
export
function
connect
(
namedPipe
:
string
,
clientId
:
string
):
T
henabl
e
<
Client
>
;
export
function
connect
(
hook
:
any
,
clientId
:
string
):
T
henabl
e
<
Client
>
{
return
new
Promise
<
Client
>
((
c
,
e
)
=>
{
const
socket
=
createConnection
(
hook
,
()
=>
{
socket
.
removeListener
(
'
error
'
,
e
);
c
(
Client
.
fromSocket
(
socket
,
clientId
));
...
...
src/vs/code/electron-browser/sharedProcess/sharedProcessMain.ts
浏览文件 @
c403c760
...
...
@@ -145,11 +145,11 @@ function main(server: Server, initData: ISharedProcessInitData, configuration: I
});
}
function
setupIPC
(
hook
:
string
):
T
Promis
e
<
Server
>
{
function
setup
(
retry
:
boolean
):
T
Promis
e
<
Server
>
{
function
setupIPC
(
hook
:
string
):
T
henabl
e
<
Server
>
{
function
setup
(
retry
:
boolean
):
T
henabl
e
<
Server
>
{
return
serve
(
hook
).
then
(
null
,
err
=>
{
if
(
!
retry
||
platform
.
isWindows
||
err
.
code
!==
'
EADDRINUSE
'
)
{
return
TPromise
.
wrapError
(
err
);
return
Promise
.
reject
(
err
);
}
// should retry, not windows and eaddrinuse
...
...
@@ -158,7 +158,7 @@ function setupIPC(hook: string): TPromise<Server> {
client
=>
{
// we could connect to a running instance. this is not good, abort
client
.
dispose
();
return
TPromise
.
wrapError
(
new
Error
(
'
There is an instance already running.
'
));
return
Promise
.
reject
(
new
Error
(
'
There is an instance already running.
'
));
},
err
=>
{
// it happens on Linux and OS X that the pipe is left behind
...
...
@@ -167,7 +167,7 @@ function setupIPC(hook: string): TPromise<Server> {
try
{
fs
.
unlinkSync
(
hook
);
}
catch
(
e
)
{
return
TPromise
.
wrapError
(
new
Error
(
'
Error deleting the shared ipc hook.
'
));
return
Promise
.
reject
(
new
Error
(
'
Error deleting the shared ipc hook.
'
));
}
return
setup
(
false
);
...
...
src/vs/code/electron-main/main.ts
浏览文件 @
c403c760
...
...
@@ -111,7 +111,7 @@ class ExpectedError extends Error {
public
readonly
isExpected
=
true
;
}
function
setupIPC
(
accessor
:
ServicesAccessor
):
T
Promis
e
<
Server
>
{
function
setupIPC
(
accessor
:
ServicesAccessor
):
T
henabl
e
<
Server
>
{
const
logService
=
accessor
.
get
(
ILogService
);
const
environmentService
=
accessor
.
get
(
IEnvironmentService
);
const
requestService
=
accessor
.
get
(
IRequestService
);
...
...
@@ -136,7 +136,7 @@ function setupIPC(accessor: ServicesAccessor): TPromise<Server> {
return
promise
;
}
function
setup
(
retry
:
boolean
):
T
Promis
e
<
Server
>
{
function
setup
(
retry
:
boolean
):
T
henabl
e
<
Server
>
{
return
serve
(
environmentService
.
mainIPCHandle
).
then
(
server
=>
{
// Print --status usage info
...
...
@@ -163,7 +163,7 @@ function setupIPC(accessor: ServicesAccessor): TPromise<Server> {
return
server
;
},
err
=>
{
if
(
err
.
code
!==
'
EADDRINUSE
'
)
{
return
TPromise
.
wrapError
<
Server
>
(
err
);
return
Promise
.
reject
<
Server
>
(
err
);
}
// Since we are the second instance, we do not want to show the dock
...
...
@@ -181,7 +181,7 @@ function setupIPC(accessor: ServicesAccessor): TPromise<Server> {
logService
.
error
(
msg
);
client
.
dispose
();
return
TPromise
.
wrapError
<
Server
>
(
new
Error
(
msg
));
return
Promise
.
reject
(
new
Error
(
msg
));
}
// Show a warning dialog after some timeout if it takes long to talk to the other instance
...
...
@@ -203,14 +203,14 @@ function setupIPC(accessor: ServicesAccessor): TPromise<Server> {
// Process Info
if
(
environmentService
.
args
.
status
)
{
return
service
.
getMainProcessInfo
().
then
(
info
=>
{
return
diagnosticsService
.
printDiagnostics
(
info
).
then
(()
=>
TPromise
.
wrapError
(
new
ExpectedError
()));
return
diagnosticsService
.
printDiagnostics
(
info
).
then
(()
=>
Promise
.
reject
(
new
ExpectedError
()));
});
}
// Log uploader
if
(
typeof
environmentService
.
args
[
'
upload-logs
'
]
!==
'
undefined
'
)
{
return
uploadLogs
(
channel
,
requestService
,
environmentService
)
.
then
(()
=>
TPromise
.
wrapError
(
new
ExpectedError
()));
.
then
(()
=>
Promise
.
reject
(
new
ExpectedError
()));
}
logService
.
trace
(
'
Sending env to running instance...
'
);
...
...
@@ -225,7 +225,7 @@ function setupIPC(accessor: ServicesAccessor): TPromise<Server> {
clearTimeout
(
startupWarningDialogHandle
);
}
return
TPromise
.
wrapError
(
new
ExpectedError
(
'
Sent env to running instance. Terminating...
'
));
return
Promise
.
reject
(
new
ExpectedError
(
'
Sent env to running instance. Terminating...
'
));
});
},
err
=>
{
...
...
@@ -237,7 +237,7 @@ function setupIPC(accessor: ServicesAccessor): TPromise<Server> {
);
}
return
TPromise
.
wrapError
<
Server
>
(
err
);
return
Promise
.
reject
<
Server
>
(
err
);
}
// it happens on Linux and OS X that the pipe is left behind
...
...
@@ -247,7 +247,7 @@ function setupIPC(accessor: ServicesAccessor): TPromise<Server> {
fs
.
unlinkSync
(
environmentService
.
mainIPCHandle
);
}
catch
(
e
)
{
logService
.
warn
(
'
Could not delete obsolete instance handle
'
,
e
);
return
TPromise
.
wrapError
<
Server
>
(
e
);
return
Promise
.
reject
<
Server
>
(
e
);
}
return
setup
(
false
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录