This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.20-315-g217a74a
- From: schwab at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 10 Dec 2014 14:58:46 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.20-315-g217a74a
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via 217a74a85cdd60df236c296ad88142b78d35eccf (commit)
from aa76a5c7010e98c737d79f37aa6ae668f60f7a00 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=217a74a85cdd60df236c296ad88142b78d35eccf
commit 217a74a85cdd60df236c296ad88142b78d35eccf
Author: Andreas Schwab <schwab@suse.de>
Date: Mon Dec 8 15:13:38 2014 +0100
Don't touch user-controlled stdio locks in forked child (bug 12847)
The stdio locks for streams with the _IO_USER_LOCK flag should not be
touched by internal code.
diff --git a/ChangeLog b/ChangeLog
index 03bba82..c2d99a0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2014-12-10 Andreas Schwab <schwab@suse.de>
+
+ [BZ #12847]
+ * sysdeps/nptl/fork.c (fresetlockfiles): Skip files with
+ user-controlled locks.
+
2014-12-10 Richard Earnshaw <rearnsha@arm.com>
* sysdeps/aarch64/strchrnul.S (vrepmask): Use a call-clobbered
diff --git a/sysdeps/nptl/fork.c b/sysdeps/nptl/fork.c
index a7dafa8..7ef693d 100644
--- a/sysdeps/nptl/fork.c
+++ b/sysdeps/nptl/fork.c
@@ -46,7 +46,8 @@ fresetlockfiles (void)
_IO_ITER i;
for (i = _IO_iter_begin(); i != _IO_iter_end(); i = _IO_iter_next(i))
- _IO_lock_init (*((_IO_lock_t *) _IO_iter_file(i)->_lock));
+ if ((_IO_iter_file (i)->_flags & _IO_USER_LOCK) == 0)
+ _IO_lock_init (*((_IO_lock_t *) _IO_iter_file(i)->_lock));
}
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 6 ++++++
sysdeps/nptl/fork.c | 3 ++-
2 files changed, 8 insertions(+), 1 deletions(-)
hooks/post-receive
--
GNU C Library master sources