Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
pubx
delve
提交
fb721093
D
delve
项目概览
pubx
/
delve
通知
0
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
delve
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
fb721093
编写于
1月 29, 2016
作者:
A
aarzilli
提交者:
Derek Parker
1月 29, 2016
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
service/rpc: clean irrelevant net/rpc error messages
Fixes #378
上级
b94e2bd0
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
23 addition
and
13 deletion
+23
-13
service/rpc/server.go
service/rpc/server.go
+22
-12
service/test/integration_test.go
service/test/integration_test.go
+1
-1
未找到文件。
service/rpc/server.go
浏览文件 @
fb721093
...
...
@@ -14,6 +14,10 @@ import (
"github.com/derekparker/delve/service/debugger"
)
type
ServerImpl
struct
{
s
*
RPCServer
}
type
RPCServer
struct
{
// config is all the information necessary to start the debugger and server.
config
*
service
.
Config
...
...
@@ -24,44 +28,46 @@ type RPCServer struct {
}
// NewServer creates a new RPCServer.
func
NewServer
(
config
*
service
.
Config
,
logEnabled
bool
)
*
RPCServer
{
func
NewServer
(
config
*
service
.
Config
,
logEnabled
bool
)
*
ServerImpl
{
log
.
SetFlags
(
log
.
Ldate
|
log
.
Ltime
|
log
.
Lshortfile
)
if
!
logEnabled
{
log
.
SetOutput
(
ioutil
.
Discard
)
}
return
&
RPCServer
{
config
:
config
,
listener
:
config
.
Listener
,
return
&
ServerImpl
{
&
RPCServer
{
config
:
config
,
listener
:
config
.
Listener
,
},
}
}
// Stop detaches from the debugger and waits for it to stop.
func
(
s
*
RPCServer
)
Stop
(
kill
bool
)
error
{
return
s
.
debugger
.
Detach
(
kill
)
func
(
s
*
ServerImpl
)
Stop
(
kill
bool
)
error
{
return
s
.
s
.
debugger
.
Detach
(
kill
)
}
// Run starts a debugger and exposes it with an HTTP server. The debugger
// itself can be stopped with the `detach` API. Run blocks until the HTTP
// server stops.
func
(
s
*
RPCServer
)
Run
()
error
{
func
(
s
*
ServerImpl
)
Run
()
error
{
var
err
error
// Create and start the debugger
if
s
.
debugger
,
err
=
debugger
.
New
(
&
debugger
.
Config
{
ProcessArgs
:
s
.
config
.
ProcessArgs
,
AttachPid
:
s
.
config
.
AttachPid
,
if
s
.
s
.
debugger
,
err
=
debugger
.
New
(
&
debugger
.
Config
{
ProcessArgs
:
s
.
s
.
config
.
ProcessArgs
,
AttachPid
:
s
.
s
.
config
.
AttachPid
,
});
err
!=
nil
{
return
err
}
go
func
()
{
c
,
err
:=
s
.
listener
.
Accept
()
c
,
err
:=
s
.
s
.
listener
.
Accept
()
if
err
!=
nil
{
panic
(
err
)
}
rpcs
:=
grpc
.
NewServer
()
rpcs
.
Register
(
s
)
rpcs
.
Register
(
s
.
s
)
rpcs
.
ServeCodec
(
jsonrpc
.
NewServerCodec
(
c
))
}()
return
nil
...
...
@@ -76,6 +82,10 @@ func (s *RPCServer) Detach(kill bool, ret *int) error {
return
s
.
debugger
.
Detach
(
kill
)
}
func
(
s
*
ServerImpl
)
Restart
()
error
{
return
s
.
s
.
Restart
(
nil
,
nil
)
}
func
(
s
*
RPCServer
)
Restart
(
arg1
interface
{},
arg2
*
int
)
error
{
if
s
.
config
.
AttachPid
!=
0
{
return
errors
.
New
(
"cannot restart process Delve did not create"
)
...
...
service/test/integration_test.go
浏览文件 @
fb721093
...
...
@@ -122,7 +122,7 @@ func TestRestart_attachPid(t *testing.T) {
Listener
:
nil
,
AttachPid
:
999
,
},
false
)
if
err
:=
server
.
Restart
(
nil
,
nil
);
err
==
nil
{
if
err
:=
server
.
Restart
();
err
==
nil
{
t
.
Fatal
(
"expected error on restart after attaching to pid but got none"
)
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录