[svn:parrot] r43962 - branches/tt362/src/pmc

plobsing at svn.parrot.org plobsing at svn.parrot.org
Mon Feb 15 04:45:59 UTC 2010


Author: plobsing
Date: Mon Feb 15 04:45:58 2010
New Revision: 43962
URL: https://trac.parrot.org/parrot/changeset/43962

Log:
eliminate ImageIO.extra_flags and ImageIO.pmc_result

Modified:
   branches/tt362/src/pmc/imageio.pmc

Modified: branches/tt362/src/pmc/imageio.pmc
==============================================================================
--- branches/tt362/src/pmc/imageio.pmc	Mon Feb 15 04:16:18 2010	(r43961)
+++ branches/tt362/src/pmc/imageio.pmc	Mon Feb 15 04:45:58 2010	(r43962)
@@ -10,6 +10,8 @@
 
 Freezes and thaws other PMCs.
 
+=cut
+
 */
 
 #define GROW_TO_16_BYTE_BOUNDARY(size) ((size) + ((size) % 16 ? 16 - (size) % 16 : 0))
@@ -127,7 +129,7 @@
 }
 
 PARROT_INLINE
-static void
+static PMC *
 visit_todo_list_thaw(PARROT_INTERP, ARGIN(PMC* info))
 {
     UINTVAL  n            = VTABLE_shift_integer(interp, info);
@@ -162,7 +164,7 @@
         break;
     }
 
-    PARROT_IMAGEIO(info)->pmc_result = pmc;
+    return pmc;
 }
 
 static void
@@ -209,11 +211,9 @@
     ATTR size_t           pos;            /* current read/write position in buffer */
     ATTR size_t           input_length;
     ATTR INTVAL           what;
-    ATTR PMC             *pmc_result;     /* where to thaw a new PMC */
     ATTR PMC             *seen;           /* seen hash */
     ATTR PMC             *todo;           /* todo list */
     ATTR UINTVAL          id;             /* freze ID of PMC */
-    ATTR INTVAL           extra_flags;    /* concerning to extra */
     ATTR struct PackFile *pf;
 
 /*
@@ -236,12 +236,10 @@
 
 */
     VTABLE void init() {
-        PARROT_IMAGEIO(SELF)->pmc_result  = PMCNULL;
         PARROT_IMAGEIO(SELF)->buffer      = NULL;
         PARROT_IMAGEIO(SELF)->todo        = pmc_new(INTERP, enum_class_ResizablePMCArray);
         PARROT_IMAGEIO(SELF)->seen        = PMCNULL;
         PARROT_IMAGEIO(SELF)->id          = 0;
-        PARROT_IMAGEIO(SELF)->extra_flags = EXTRA_IS_NULL;
         PARROT_IMAGEIO(SELF)->pf          = PackFile_new(INTERP, 0);
 
         PObj_custom_mark_destroy_SETALL(SELF);
@@ -473,10 +471,7 @@
 */
 
     VTABLE PMC *shift_pmc() {
-        PMC *result;
-        visit_todo_list_thaw(INTERP, SELF);
-        result = PARROT_IMAGEIO(SELF)->pmc_result;
-        return result;
+        return visit_todo_list_thaw(INTERP, SELF);
     }
 
     VTABLE void set_pmc(PMC *p)


More information about the parrot-commits mailing list