diff options
Diffstat (limited to 'pkg/ipc')
| -rw-r--r-- | pkg/ipc/ipc.go | 5 | ||||
| -rw-r--r-- | pkg/ipc/ipc_test.go | 3 |
2 files changed, 5 insertions, 3 deletions
diff --git a/pkg/ipc/ipc.go b/pkg/ipc/ipc.go index 2f1cf3ef1..f6576342f 100644 --- a/pkg/ipc/ipc.go +++ b/pkg/ipc/ipc.go @@ -308,8 +308,7 @@ func (env *Env) Exec(opts *ExecOpts, p *prog.Prog) (output []byte, info []CallIn if env.config.Flags&FlagUseShmem == 0 { progData = env.in[:progSize] } - needOutput := env.config.Flags&FlagSignal != 0 || opts.Flags&FlagCollectComps != 0 - if needOutput && env.out != nil { + if env.out != nil { // Zero out the first two words (ncmd and nsig), so that we don't have garbage there // if executor crashes before writing non-garbage there. for i := 0; i < 4; i++ { @@ -333,7 +332,7 @@ func (env *Env) Exec(opts *ExecOpts, p *prog.Prog) (output []byte, info []CallIn return } - if needOutput && env.out != nil { + if env.out != nil { info, err0 = env.readOutCoverage(p) } return diff --git a/pkg/ipc/ipc_test.go b/pkg/ipc/ipc_test.go index 51e961119..6d1c2c80e 100644 --- a/pkg/ipc/ipc_test.go +++ b/pkg/ipc/ipc_test.go @@ -114,6 +114,9 @@ func TestExecute(t *testing.T) { for i := 0; i < iters/len(flags); i++ { p := target.Generate(rs, 10, nil) + if i == 0 { + p = target.GenerateSimpleProg() + } opts := &ExecOpts{} output, _, _, _, err := env.Exec(opts, p) if err != nil { |
