1996-10-15
1996-10-15 04:04:07 by Fredrik Hübinette (Hubbe) <hubbe@hubbe.net>
-
a29e027722bd2cb282e52bdbcb121925f829a697
(13 lines)
(+12/-1)
[
Show
| Annotate
]
Branch: 7.9
check_threads_etc() callbacks recoded...
Rev: src/gc.c:1.3
Rev: src/gc.h:1.4
Rev: src/interpret.c:1.7
Rev: src/interpret.h:1.4
Rev: src/las.c:1.4
Rev: src/object.c:1.2
Rev: src/object.h:1.2
Rev: src/signal_handler.c:1.4
Rev: src/threads.c:1.8
Rev: src/threads.h:1.5
8: Inside #if defined(GC2)
#ifdef GC2
+ struct callback *gc_evaluator_callback=0;
+
#include "array.h"
#include "multiset.h"
#include "mapping.h"
197:
2147483647,/* ~ 2^31 = 2147483648 */
};
- void do_gc(void)
+ void do_gc()
{
double tmp;
INT32 tmp2;
282: Inside #if defined(DEBUG)
fprintf(stderr,"done (freed %ld of %ld objects).\n",
(long)(tmp2-num_objects),(long)tmp2);
#endif
+
+ #ifndef ALWAYS_GC
+ if(d_flag < 3 && gc_evaluator_callback)
+ {
+ remove_callback(gc_evaluator_callback);
+ gc_evaluator_callback=0;
}
-
+ #endif
+ }
#endif