summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--trans/fakeroot.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/trans/fakeroot.c b/trans/fakeroot.c
index 64f32081..cb4f818d 100644
--- a/trans/fakeroot.c
+++ b/trans/fakeroot.c
@@ -1032,10 +1032,12 @@ netfs_demuxer (mach_msg_header_t *inp,
err = mach_msg (inp, MACH_SEND_MSG, inp->msgh_size, 0,
MACH_PORT_NULL, MACH_MSG_TIMEOUT_NONE,
MACH_PORT_NULL);
- assert_perror (err); /* XXX should synthesize reply */
+ if (err)
+ ((mig_reply_header_t *) outp)->RetCode = err;
+ else
+ /* We already sent the message, so the server loop shouldn't do it again. */
+ ((mig_reply_header_t *) outp)->RetCode = MIG_NO_REPLY;
ports_port_deref (cred);
- /* We already sent the message, so the server loop shouldn't do it again. */
- ((mig_reply_header_t *) outp)->RetCode = MIG_NO_REPLY;
return 1;
}
}