stas 2003/07/25 05:49:41
Modified: xs/APR/PerlIO apr_perlio.c Log: /* XXX: PL_perlio persists, and remembers old layers, which are * inactive, but core perlio should reset it, provide a temp * workaround */ Revision Changes Path 1.27 +10 -1 modperl-2.0/xs/APR/PerlIO/apr_perlio.c Index: apr_perlio.c =================================================================== RCS file: /home/cvs/modperl-2.0/xs/APR/PerlIO/apr_perlio.c,v retrieving revision 1.26 retrieving revision 1.27 diff -u -r1.26 -r1.27 --- apr_perlio.c 12 May 2003 00:11:24 -0000 1.26 +++ apr_perlio.c 25 Jul 2003 12:49:40 -0000 1.27 @@ -40,6 +40,15 @@ return code; } +static IV PerlIOAPR_popped(pTHX_ PerlIO *f) +{ + /* XXX: PL_perlio persists, and remembers old layers, which are + * inactive, but core perlio should reset it, provide a temp + * workaround */ + PL_perlio = NULL; + return PerlIOBase_popped(aTHX_ f); +} + static PerlIO *PerlIOAPR_open(pTHX_ PerlIO_funcs *self, PerlIO_list_t *layers, IV n, const char *mode, int fd, int imode, @@ -384,7 +393,7 @@ sizeof(PerlIOAPR), PERLIO_K_MULTIARG, PerlIOAPR_pushed, - PerlIOBase_popped, + PerlIOAPR_popped, PerlIOAPR_open, PerlIOBase_binmode, /* binmode() is handled by :crlf */ NULL, /* no getarg needed */