diff --git a/proctl/proctl.go b/proctl/proctl.go index 46963815f244d9362a5ddcf3b52fc5e412691548..9317a61355091dd7f490f6d814036463b05bc03b 100644 --- a/proctl/proctl.go +++ b/proctl/proctl.go @@ -247,25 +247,6 @@ func (dbp *DebuggedProcess) Next() error { return dbp.run(dbp.next) } -func (dbp *DebuggedProcess) setChanRecvBreakpoints() error { - allg, err := dbp.GoroutinesInfo() - if err != nil { - return err - } - for _, g := range allg { - if g.ChanRecvBlocked() { - ret, err := g.chanRecvReturnAddr(dbp) - if err != nil { - return err - } - if _, err = dbp.TempBreak(ret); err != nil { - return err - } - } - } - return nil -} - func (dbp *DebuggedProcess) next() error { defer dbp.clearTempBreakpoints() @@ -329,6 +310,25 @@ func (dbp *DebuggedProcess) next() error { return dbp.Halt() } +func (dbp *DebuggedProcess) setChanRecvBreakpoints() error { + allg, err := dbp.GoroutinesInfo() + if err != nil { + return err + } + for _, g := range allg { + if g.ChanRecvBlocked() { + ret, err := g.chanRecvReturnAddr(dbp) + if err != nil { + return err + } + if _, err = dbp.TempBreak(ret); err != nil { + return err + } + } + } + return nil +} + // Resume process. func (dbp *DebuggedProcess) Continue() error { for _, thread := range dbp.Threads {