cvsuser 04/12/18 07:20:56
Modified: classes coroutine.pmc
src sub.c
Log:
Cleanup
Revision Changes Path
1.47 +1 -2 parrot/classes/coroutine.pmc
Index: coroutine.pmc
===================================================================
RCS file: /cvs/public/parrot/classes/coroutine.pmc,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -r1.46 -r1.47
--- coroutine.pmc 18 Dec 2004 15:08:18 -0000 1.46
+++ coroutine.pmc 18 Dec 2004 15:20:49 -0000 1.47
@@ -1,6 +1,6 @@
/*
Copyright: 2001-2003 The Perl Foundation. All Rights Reserved.
-$Id: coroutine.pmc,v 1.46 2004/12/18 15:08:18 rubys Exp $
+$Id: coroutine.pmc,v 1.47 2004/12/18 15:20:49 rubys Exp $
=head1 NAME
@@ -105,7 +105,6 @@
}
else {
wanted_seg = sub->caller_seg;
- sub->caller_seg = interpreter->code->cur_cs;
}
swap_context(interpreter, SELF);
1.84 +3 -1 parrot/src/sub.c
Index: sub.c
===================================================================
RCS file: /cvs/public/parrot/src/sub.c,v
retrieving revision 1.83
retrieving revision 1.84
diff -u -r1.83 -r1.84
--- sub.c 18 Dec 2004 15:08:22 -0000 1.83
+++ sub.c 18 Dec 2004 15:20:56 -0000 1.84
@@ -1,6 +1,6 @@
/*
Copyright: 2001-2003 The Perl Foundation. All Rights Reserved.
-$Id: sub.c,v 1.83 2004/12/18 15:08:22 rubys Exp $
+$Id: sub.c,v 1.84 2004/12/18 15:20:56 rubys Exp $
=head1 NAME
@@ -183,6 +183,8 @@
if (!interpreter->ctx.current_sub) {
copy_regs(interpreter, ctx->bp);
interpreter->ctx.current_sub = sub;
+ if (!(PObj_get_FLAGS(sub) & SUB_FLAG_GENERATOR))
+ ctx->current_sub = sub;
interpreter->ctx.current_cont = BP_REG_PMC(ctx->bp,1);
REG_PMC(0) = sub;
REG_PMC(1) = interpreter->ctx.current_cont;