[svn:parrot] r38828 - trunk/src/pmc

whiteknight at svn.parrot.org whiteknight at svn.parrot.org
Sat May 16 13:53:56 UTC 2009


Author: whiteknight
Date: Sat May 16 13:53:56 2009
New Revision: 38828
URL: https://trac.parrot.org/parrot/changeset/38828

Log:
[PMC] Fixed strange coupling between managedstruct and unmanagedstruct in init_pmc that allows chromatic++'s change in r38822 to be reapplied. Infinoid++ for helping bisect

Modified:
   trunk/src/pmc/managedstruct.pmc
   trunk/src/pmc/unmanagedstruct.pmc

Modified: trunk/src/pmc/managedstruct.pmc
==============================================================================
--- trunk/src/pmc/managedstruct.pmc	Sat May 16 13:46:58 2009	(r38827)
+++ trunk/src/pmc/managedstruct.pmc	Sat May 16 13:53:56 2009	(r38828)
@@ -65,7 +65,7 @@
 
     VTABLE void init_pmc(PMC *value) {
         SELF.init();
-        SUPER(value);
+        SELF.set_pmc(value);
     }
 
 /*

Modified: trunk/src/pmc/unmanagedstruct.pmc
==============================================================================
--- trunk/src/pmc/unmanagedstruct.pmc	Sat May 16 13:46:58 2009	(r38827)
+++ trunk/src/pmc/unmanagedstruct.pmc	Sat May 16 13:53:56 2009	(r38828)
@@ -707,7 +707,9 @@
 */
 
     VTABLE void init_pmc(PMC *value) {
-        SELF.init();
+        Parrot_UnManagedStruct_attributes *attrs =
+            mem_allocate_zeroed_typed(Parrot_UnManagedStruct_attributes);
+        PMC_data(SELF) = attrs;
         SELF.set_pmc(value);
     }
 


More information about the parrot-commits mailing list