diff src/alloc.c @ 1773:aa0db78e67c4

[xemacs-hg @ 2003-11-01 14:54:53 by kaltenbach] Bugfix in USE_KKCC mode processing weak data structures 2003-11-01 Markus Kaltenbach <makalten@informatik.uni-tuebingen.de> * src/alloc.c (garbage_collect_1):fix bug * automated/weak-tests.el:added test to track it down
author kaltenbach
date Sat, 01 Nov 2003 14:55:00 +0000
parents 9ddedfc70c4a
children 59e1bbea04fe
line wrap: on
line diff
--- a/src/alloc.c	Fri Oct 31 22:51:31 2003 +0000
+++ b/src/alloc.c	Sat Nov 01 14:55:00 2003 +0000
@@ -4613,10 +4613,12 @@
   while (finish_marking_weak_hash_tables () > 0 ||
 	 finish_marking_weak_lists       () > 0 ||
 	 continue_marking_ephemerons     () > 0)
+#ifdef USE_KKCC
+    {
+      kkcc_marking ();
+    }
+#else /* NOT USE_KKCC */
     ;
-
-#ifdef USE_KKCC
-  kkcc_marking ();
 #endif /* USE_KKCC */
 
   /* At this point, we know which objects need to be finalized: we
@@ -4625,12 +4627,14 @@
   while (finish_marking_ephemerons       () > 0 ||
 	 finish_marking_weak_lists       () > 0 ||
 	 finish_marking_weak_hash_tables () > 0)
-    ;
-
 #ifdef USE_KKCC
-  kkcc_marking ();
+    {
+      kkcc_marking ();
+    }
   kkcc_gc_stack_free ();
 #undef mark_object
+#else /* NOT USE_KKCC */
+    ;
 #endif /* USE_KKCC */
 
   /* And prune (this needs to be called after everything else has been