cvsuser 03/10/09 07:06:11
Modified: . interpreter.c
Log:
A sweep is triggered always at the end of interpreter,
not only if there are _timely_ destruction objects.
Revision Changes Path
1.206 +6 -8 parrot/interpreter.c
Index: interpreter.c
===================================================================
RCS file: /cvs/public/parrot/interpreter.c,v
retrieving revision 1.205
retrieving revision 1.206
diff -u -w -r1.205 -r1.206
--- interpreter.c 5 Oct 2003 01:06:25 -0000 1.205
+++ interpreter.c 9 Oct 2003 14:06:10 -0000 1.206
@@ -1,7 +1,7 @@
/* interpreter.c
* Copyright: 2001-2003 The Perl Foundation. All Rights Reserved.
* CVS Info
- * $Id: interpreter.c,v 1.205 2003/10/05 01:06:25 dan Exp $
+ * $Id: interpreter.c,v 1.206 2003/10/09 14:06:10 boemmels Exp $
* Overview:
* The interpreter api handles running the operations
* Data Structure and Algorithms:
@@ -868,7 +868,7 @@
struct Stash *stash, *next_stash;
UNUSED(exit_code);
- /* if something needs timely destruction (e.g. closing PIOs)
+ /* if something needs destruction (e.g. closing PIOs)
* we must destroy it now:
* no DOD run, so everything is considered dead
*/
@@ -878,16 +878,14 @@
*/
Parrot_IOData_mark(interpreter, interpreter->piodata);
- if (interpreter->has_early_DOD_PMCs)
free_unused_pobjects(interpreter, interpreter->arena_base->pmc_pool);
- /* we destroy all child interpreters and the last one too,
- * if the --leak-test commandline was given
- */
-
/* Now the PIOData gets also cleared */
PIO_finish(interpreter);
+ /* we destroy all child interpreters and the last one too,
+ * if the --leak-test commandline was given
+ */
if (! (interpreter->parent_interpreter ||
Interp_flags_TEST(interpreter, PARROT_DESTROY_FLAG)))
return;