aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--cmd/mbf/daemon.go10
1 files changed, 6 insertions, 4 deletions
diff --git a/cmd/mbf/daemon.go b/cmd/mbf/daemon.go
index 9d410588..c0b9e73a 100644
--- a/cmd/mbf/daemon.go
+++ b/cmd/mbf/daemon.go
@@ -99,10 +99,9 @@ func cancelIdent(
var ident pkg.ID
if _, err := io.ReadFull(conn, ident[:]); err != nil {
return nil, false, errors.Join(err, conn.Close())
- } else if err = conn.Close(); err != nil {
- return nil, false, err
}
- return &ident, cache.Cancel(unique.Make(ident)), nil
+ ok := cache.Cancel(unique.Make(ident))
+ return &ident, ok, conn.Close()
}
// serve services connections from a [net.UnixListener].
@@ -324,7 +323,10 @@ func cancelRemote(
} else if n != len(id) {
return errors.Join(io.ErrShortWrite, conn.Close())
}
- return conn.Close()
+ if _, err = conn.Read(make([]byte, 1)); err == io.EOF {
+ err = nil
+ }
+ return errors.Join(err, conn.Close())
}
// abortRemote aborts all [pkg.Artifact] curing on a daemon.