summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--hurd/sigunwind.c3
2 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 343a936105..33ea5ab374 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-11-25 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Destroy reply port
+ of interrupted RPC instead of restoring it.
+
2015-11-24 Joseph Myers <joseph@codesourcery.com>
* stdlib/strtod_nan.c: New file.
diff --git a/hurd/sigunwind.c b/hurd/sigunwind.c
index 3a62fb5fb9..800bb306f5 100644
--- a/hurd/sigunwind.c
+++ b/hurd/sigunwind.c
@@ -50,7 +50,8 @@ _hurdsig_longjmp_from_handler (void *data, jmp_buf env, int val)
*reply_port = MACH_PORT_DEAD;
__mach_port_destroy (__mach_task_self (), port);
}
- *reply_port = scp->sc_reply_port;
+ if (scp->sc_reply_port)
+ __mach_port_destroy (__mach_task_self (), scp->sc_reply_port);
}
__spin_lock (&ss->lock);