summaryrefslogtreecommitdiff
path: root/ext/PerlIO/via
diff options
context:
space:
mode:
authorRichard Clamp <richardc@unixbeard.net>2002-08-11 16:52:24 +0100
committerNick Ing-Simmons <nik@tiuk.ti.com>2002-08-27 18:42:41 +0000
commit4f776d34be4f213cd24b2ea13cb7dcdd291f4cd6 (patch)
tree3485f2f0c22e70704141b800d2e84c9c52199564 /ext/PerlIO/via
parentc6d54e4030e9ceec9a1b154ca7ec3429f435a570 (diff)
downloadperl-4f776d34be4f213cd24b2ea13cb7dcdd291f4cd6.tar.gz
Re: PerlIO::via silent failure
Message-Id: <20020811145224.GA23897@mirth.demon.co.uk> p4raw-id: //depot/perlio@17795
Diffstat (limited to 'ext/PerlIO/via')
-rw-r--r--ext/PerlIO/via/via.xs4
1 files changed, 4 insertions, 0 deletions
diff --git a/ext/PerlIO/via/via.xs b/ext/PerlIO/via/via.xs
index 2bcd35562d..d4546781e6 100644
--- a/ext/PerlIO/via/via.xs
+++ b/ext/PerlIO/via/via.xs
@@ -161,6 +161,9 @@ PerlIOVia_pushed(pTHX_ PerlIO * f, const char *mode, SV * arg,
else if (SvIV(result) != 0)
return SvIV(result);
}
+ else {
+ goto push_failed;
+ }
if (PerlIOVia_fetchmethod(aTHX_ s, MYMethod(FILL)) ==
(CV *) - 1)
PerlIOBase(f)->flags &= ~PERLIO_F_FASTGETS;
@@ -172,6 +175,7 @@ PerlIOVia_pushed(pTHX_ PerlIO * f, const char *mode, SV * arg,
Perl_warner(aTHX_ packWARN(WARN_LAYER),
"Cannot find package '%.*s'", (int) pkglen,
pkg);
+push_failed:
#ifdef ENOSYS
errno = ENOSYS;
#else