From: Andreas Schwab Date: Mon, 7 Nov 2011 14:07:31 +0000 (+0100) Subject: Fix locking in _IO_flush_all_lockp X-Git-Tag: glibc-2.15~112 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7583a88d1c7170caad26966bcea8bfc2c92093ba;p=thirdparty%2Fglibc.git Fix locking in _IO_flush_all_lockp --- diff --git a/ChangeLog b/ChangeLog index b09f5efe64f..3a71044b6d4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2011-11-07 Andreas Schwab + * libio/genops.c (_IO_flush_all_lockp): Only register cleanup + handler when locking. + * nss/nss_files/files-initgroups.c (_nss_files_initgroups_dyn): Fix size of allocated buffer. diff --git a/libio/genops.c b/libio/genops.c index 5d21c424043..bb40c343564 100644 --- a/libio/genops.c +++ b/libio/genops.c @@ -826,7 +826,7 @@ _IO_flush_all_lockp (int do_lock) int last_stamp; #ifdef _IO_MTSAFE_IO - _IO_cleanup_region_start_noarg (flush_cleanup); + __libc_cleanup_region_start (do_lock, flush_cleanup, 0); if (do_lock) _IO_lock_lock (list_all_lock); #endif @@ -866,7 +866,7 @@ _IO_flush_all_lockp (int do_lock) #ifdef _IO_MTSAFE_IO if (do_lock) _IO_lock_unlock (list_all_lock); - _IO_cleanup_region_end (0); + __libc_cleanup_region_end (0); #endif return result;