summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--stdlib/atexit.c3
2 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 6f20754bb0..47c6ab4798 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 1999-10-10  Ulrich Drepper  <drepper@cygnus.com>
 
+	* stdlib/atexit.c (initial): New variable.  Use to initialize
+	__exit_funcs.
+	* stdlib/exit.c (exit): Beware to not free statically allocale
+	list element [PR libc/1305].
+
 	* stdlib/xpg_basename.c (__xpg_basename): Don't return pointer to
 	slash before the basename [PR libc/1383].
 
diff --git a/stdlib/atexit.c b/stdlib/atexit.c
index 80cd79ff6a..e9648d60e1 100644
--- a/stdlib/atexit.c
+++ b/stdlib/atexit.c
@@ -40,7 +40,8 @@ atexit (void (*func) (void))
 __libc_lock_define_initialized (static, lock)
 
 
-struct exit_function_list *__exit_funcs;
+static struct exit_function_list initial;
+struct exit_function_list *__exit_funcs = &initial;
 
 struct exit_function *
 __new_exitfn (void)