about summary refs log tree commit diff
diff options
context:
space:
mode:
authorOndřej Bílka <neleai@seznam.cz>2013-10-15 09:45:37 +0200
committerOndřej Bílka <neleai@seznam.cz>2013-10-15 09:47:33 +0200
commit4b1a6d8bc9cf568f053a66375945bcadb19eef8b (patch)
tree1b4da6799a7be267f93aa21c37999cbaa6246e77
parent1e14558915352b8324428be4e735df484861b3c6 (diff)
downloadglibc-4b1a6d8bc9cf568f053a66375945bcadb19eef8b.tar.gz
glibc-4b1a6d8bc9cf568f053a66375945bcadb19eef8b.tar.xz
glibc-4b1a6d8bc9cf568f053a66375945bcadb19eef8b.zip
Clear initfini list after freeing. Fixes bug 15308.
-rw-r--r--ChangeLog4
-rw-r--r--NEWS13
-rw-r--r--elf/dl-libc.c1
3 files changed, 12 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 579ac6f102..5724413bf5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-10-15   Ondřej Bílka  <neleai@seznam.cz>
+
+	* elf/dl-libc.c: Clear initfini list after freeing.
+
 2013-10-14  Joseph Myers  <joseph@codesourcery.com>
 
 	* soft-fp/adddf3.c: Fix vertical whitespace and indentation.
diff --git a/NEWS b/NEWS
index 48bbb02285..ac375f8045 100644
--- a/NEWS
+++ b/NEWS
@@ -10,12 +10,13 @@ Version 2.19
 * The following bugs are resolved with this release:
 
   156, 431, 832, 13028, 13982, 13985, 14155, 14547, 14699, 14910, 15048,
-  15362, 15400, 15427, 15522, 15531, 15532, 15608, 15609, 15610, 15632,
-  15640, 15672, 15680, 15681, 15723, 15734, 15735, 15736, 15748, 15749,
-  15754, 15760, 15764, 15797, 15844, 15847, 15849, 15855, 15856, 15857,
-  15859, 15867, 15886, 15887, 15890, 15892, 15893, 15895, 15897, 15905,
-  15909, 15919, 15921, 15923, 15939, 15963, 15966, 15988, 16032, 16034,
-  16036.
+  15308, 15362, 15400, 15427, 15522, 15531, 15532, 15608, 15609, 15610,
+  15632, 15640, 15672, 15680, 15681, 15723, 15734, 15735, 15736, 15748,
+  15749, 15754, 15760, 15764, 15797, 15844, 15847, 15849, 15855, 15856,
+  15857, 15859, 15867, 15886, 15887, 15890, 15892, 15893, 15895, 15897,
+  15905, 15909, 15919, 15921, 15923, 15939, 15963, 15966, 15988, 16032,
+  15905, 15909, 15919, 15921, 15923, 15939, 15963, 15966, 15988, 16032,
+  16034, 16036.
 
 * CVE-2012-4412 The strcoll implementation caches indices and rules for
   large collation sequences to optimize multiple passes.  This cache
diff --git a/elf/dl-libc.c b/elf/dl-libc.c
index aba0d1af19..397d898993 100644
--- a/elf/dl-libc.c
+++ b/elf/dl-libc.c
@@ -286,6 +286,7 @@ libc_freeres_fn (free_mem)
 	  /* Free the initfini dependency list.  */
 	  if (l->l_free_initfini)
 	    free (l->l_initfini);
+	  l->l_initfini = NULL;
 	}
 
       if (__builtin_expect (GL(dl_ns)[ns]._ns_global_scope_alloc, 0) != 0