1 |
2002-12-10 Mikael Djurfeldt <mdj@kvast.blakulla.net> |
2002-12-10 Mikael Djurfeldt <mdj@kvast.blakulla.net> |
2 |
|
|
3 |
|
* gc-malloc.c, gc.h (scm_gc_malloc_prehistory): New function. |
4 |
|
|
5 |
* gc-malloc.c (malloc_mutex): New mutex. |
* gc-malloc.c (malloc_mutex): New mutex. |
6 |
(scm_gc_init_malloc): Initialize it. |
(scm_gc_malloc_prehistory): Initialize it. |
7 |
(scm_realloc): Serialize call to realloc |
(scm_realloc): Serialize call to realloc |
8 |
(scm_calloc): Same for calloc. |
(scm_calloc): Same for calloc. |
9 |
Thanks to Wolfgang Jaehrling! |
Thanks to Wolfgang Jaehrling! |
10 |
(Now we have to make sure all calls to malloc/realloc are made |
(Now we have to make sure all calls to malloc/realloc are made |
11 |
through scm_malloc.) |
through scm_malloc.) |
12 |
|
|
13 |
|
* init.c (scm_init_guile_1): Call scm_gc_malloc_prehistory. |
14 |
|
|
15 |
* threads.c (really_launch): Release heap (to prevent deadlock). |
* threads.c (really_launch): Release heap (to prevent deadlock). |
16 |
(create_thread): Release heap before locking thread admin mutex. |
(create_thread): Release heap before locking thread admin mutex. |
17 |
|
|