summaryrefslogtreecommitdiff
path: root/src/iter.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/iter.c')
-rw-r--r--src/iter.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/iter.c b/src/iter.c
index b30248b0..888fb3fd 100644
--- a/src/iter.c
+++ b/src/iter.c
@@ -267,7 +267,6 @@ void userIterDestroy( Program *prg, Tree ***psp, UserIter *uiter )
vm_popn( uiter->yieldSize );
vm_popn( sizeof(UserIter) / sizeof(Word) );
- vm_popn( argSize );
uiter->type = 0;
@@ -289,9 +288,14 @@ void userIterDestroy2( Program *prg, Tree ***psp, UserIter *uiter )
vm_popn( uiter->yieldSize );
vm_popn( sizeof(UserIter) / sizeof(Word) );
- vm_popn( argSize );
+
+ /* Contiguous push. */
vm_pop_tree();
+ /* The IN_PREP_ARGS stack data. */
+ vm_popn( argSize );
+ vm_pop_value();
+
uiter->type = 0;
*psp = sp;