[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