[svn:parrot] r49598 - branches/generational_gc/src/gc

bacek at svn.parrot.org bacek at svn.parrot.org
Wed Oct 20 06:25:35 UTC 2010


Author: bacek
Date: Wed Oct 20 06:25:35 2010
New Revision: 49598
URL: https://trac.parrot.org/parrot/changeset/49598

Log:
Fix sweep_pmc_cb to actually deallocate PMC.

Modified:
   branches/generational_gc/src/gc/gc_ms2.c

Modified: branches/generational_gc/src/gc/gc_ms2.c
==============================================================================
--- branches/generational_gc/src/gc/gc_ms2.c	Wed Oct 20 06:25:26 2010	(r49597)
+++ branches/generational_gc/src/gc/gc_ms2.c	Wed Oct 20 06:25:35 2010	(r49598)
@@ -1229,7 +1229,7 @@
 {
     ASSERT_ARGS(gc_ms2_sweep_pmc_cb)
     PMC *pmc = (PMC *)obj;
-    gc_ms2_free_pmc_header(interp, pmc);
+    Parrot_pmc_destroy(interp, pmc);
 }
 
 /*
@@ -1575,11 +1575,10 @@
                           | ~PObj_GC_wb_triggered_FLAG;
         }
         else if (!PObj_constant_TEST(obj)) {
-            PObj_on_free_list_SET(obj);
-            LIST_REMOVE(list, tmp);
-
             callback(interp, obj);
 
+            LIST_REMOVE(list, tmp);
+            PObj_on_free_list_SET(obj);
             Parrot_gc_pool_free(interp, pool, tmp);
         }
         else {


More information about the parrot-commits mailing list