aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--sysdeps/mach/hurd/fork.c4
2 files changed, 9 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 91328e0..5b0d571 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,12 @@
+2011-09-08 Roland McGrath <roland@hack.frob.com>
+
+ * sysdeps/mach/hurd/fork.c (__fork): Initialize REFS so we don't use a
+ garbage value in a __mach_port_mod_refs call in the cases of the
+ task-self and thread-self ports.
+
2011-09-08 Andreas Schwab <schwab@redhat.com>
- * elf/dl-load.c (lose): Check for non-null l.
+ * elf/dl-load.c (lose): Check for non-null L.
2011-09-07 Ulrich Drepper <drepper@gmail.com>
diff --git a/sysdeps/mach/hurd/fork.c b/sysdeps/mach/hurd/fork.c
index 3288f18..66fa7e2 100644
--- a/sysdeps/mach/hurd/fork.c
+++ b/sysdeps/mach/hurd/fork.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1994,1995,1996,1997,1999,2001,2002,2004,2005,2006
+/* Copyright (C) 1994,1995,1996,1997,1999,2001,2002,2004,2005,2006,2011
Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -313,7 +313,7 @@ __fork (void)
{
/* This is a send right or a dead name.
Give the child as many references for it as we have. */
- mach_port_urefs_t refs, *record_refs = NULL;
+ mach_port_urefs_t refs = 0, *record_refs = NULL;
mach_port_t insert;
mach_msg_type_name_t insert_type = MACH_MSG_TYPE_COPY_SEND;
if (portnames[i] == newtask || portnames[i] == newproc)