summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChip <chip@pobox.com>2011-09-19 23:51:49 -0700
committerChip <chip@pobox.com>2011-09-19 23:51:49 -0700
commit30543ae2a0751a0540e2dd76f7dbe2afb2faf04b (patch)
tree5c50a6c07bfb4979641a93237b1b3aa921591a75
parentbba8aa75587afc4d1a5f5dff311609281d667a3d (diff)
downloadperl-chip/magicflags1.tar.gz
add a couple missing LEAVEs in perlio_async_run()chip/magicflags1
-rw-r--r--perlio.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/perlio.c b/perlio.c
index e42a78fc28..fdd531cc0c 100644
--- a/perlio.c
+++ b/perlio.c
@@ -2587,8 +2587,10 @@ S_perlio_async_run(pTHX_ PerlIO* f) {
SAVEDESTRUCTOR_X(S_lockcnt_dec, (void*)f);
PerlIO_lockcnt(f)++;
PERL_ASYNC_CHECK();
- if ( !(PerlIOBase(f)->flags & PERLIO_F_CLEARED) )
+ if ( !(PerlIOBase(f)->flags & PERLIO_F_CLEARED) ) {
+ LEAVE;
return 0;
+ }
/* we've just run some perl-level code that could have done
* anything, including closing the file or clearing this layer.
* If so, free any lower layers that have already been
@@ -2600,6 +2602,7 @@ S_perlio_async_run(pTHX_ PerlIO* f) {
*f = l->next;
Safefree(l);
}
+ LEAVE;
return 1;
}