aboutsummaryrefslogtreecommitdiffhomepage
path: root/cmd/mbf/daemon.go
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-04-19 14:53:28 +0900
committerOphestra <cat@gensokyo.uk>2026-04-19 14:53:28 +0900
commit9a274c78a396f3e4ad1eae54e77bc9294044d5cc (patch)
tree134a1da7f073b050a48e50e5a4367c247112ac1c /cmd/mbf/daemon.go
parent5647c3a91fb3f116235d866c5ab8af07dd91e3a4 (diff)
cmd/mbf: close on abort completion
This enables synchronisation on the client side via epoll. Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'cmd/mbf/daemon.go')
-rw-r--r--cmd/mbf/daemon.go9
1 files changed, 7 insertions, 2 deletions
diff --git a/cmd/mbf/daemon.go b/cmd/mbf/daemon.go
index a32ccf59..9d410588 100644
--- a/cmd/mbf/daemon.go
+++ b/cmd/mbf/daemon.go
@@ -194,11 +194,11 @@ func serve(
}
case specialAbort:
+ log.Println("aborting all pending cures")
+ cm.c.Abort()
if _err := conn.Close(); _err != nil {
log.Println(_err)
}
- log.Println("aborting all pending cures")
- cm.c.Abort()
}
return
@@ -339,5 +339,10 @@ func abortRemote(
defer close(done)
err = writeSpecialHeader(conn, specialAbort)
+ if err == nil {
+ if _, err = conn.Read(make([]byte, 1)); err == io.EOF {
+ err = nil
+ }
+ }
return errors.Join(err, conn.Close())
}