1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-17 09:10:22 +02:00

(scm_init_guile_1): move scm_weaks_prehistory before

scm_struct_prehistory. The effect is that structs are freed before
weak vectors are cleaned up. This fixes a bug reported by Kevin
Ryde (putting a struct into a weak vector exposes a freed cell).
This commit is contained in:
Han-Wen Nienhuys 2004-08-31 21:44:46 +00:00
parent d99217eb04
commit 459cf1f259
2 changed files with 8 additions and 1 deletions

View file

@ -1,3 +1,10 @@
2004-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
* init.c (scm_init_guile_1): move scm_weaks_prehistory before
scm_struct_prehistory. The effect is that structs are freed before
weak vectors are cleaned up. This fixes a bug reported by Kevin
Ryde (putting a struct into a weak vector exposes a freed cell).
2004-08-29 Rob Browning <rlb@defaultvalue.org> 2004-08-29 Rob Browning <rlb@defaultvalue.org>
* ramap.c (s_scm_array_map_x): update documentation; rename ra0 to * ramap.c (s_scm_array_map_x): update documentation; rename ra0 to

View file

@ -469,9 +469,9 @@ scm_init_guile_1 (SCM_STACKITEM *base)
scm_debug_malloc_prehistory (); scm_debug_malloc_prehistory ();
#endif #endif
scm_init_storage (); /* requires smob_prehistory */ scm_init_storage (); /* requires smob_prehistory */
scm_weaks_prehistory (); /* requires storage */
scm_struct_prehistory (); /* requires storage */ scm_struct_prehistory (); /* requires storage */
scm_symbols_prehistory (); /* requires storage */ scm_symbols_prehistory (); /* requires storage */
scm_weaks_prehistory (); /* requires storage */
scm_init_subr_table (); scm_init_subr_table ();
scm_environments_prehistory (); /* requires storage */ scm_environments_prehistory (); /* requires storage */
scm_modules_prehistory (); /* requires storage */ scm_modules_prehistory (); /* requires storage */