diff options
author | Adrian M. Enache <enache@rdslink.ro> | 2003-04-17 17:35:36 +0300 |
---|---|---|
committer | Abhijit Menon-Sen <ams@wiw.org> | 2003-04-17 12:24:57 +0000 |
commit | c5b94a97fd82571950babee90bae3a327a5936a9 (patch) | |
tree | 7efefcac78df24a6b9869cd77f9085ab6fb8821f | |
parent | 164794897687cae4b298b3efb3ed2d20c601262b (diff) | |
download | perl-c5b94a97fd82571950babee90bae3a327a5936a9.tar.gz |
Re: [perl #21950] 5.8.x -- :scalar and magic strings
Message-Id: <20030417113536.GA898@ratsnest.hole>
p4raw-id: //depot/perl@19247
-rw-r--r-- | ext/PerlIO/scalar/scalar.xs | 2 | ||||
-rw-r--r-- | ext/PerlIO/t/scalar.t | 8 |
2 files changed, 8 insertions, 2 deletions
diff --git a/ext/PerlIO/scalar/scalar.xs b/ext/PerlIO/scalar/scalar.xs index b26a238558..0d56ecc613 100644 --- a/ext/PerlIO/scalar/scalar.xs +++ b/ext/PerlIO/scalar/scalar.xs @@ -37,7 +37,7 @@ PerlIOScalar_pushed(pTHX_ PerlIO * f, const char *mode, SV * arg, else { s->var = newSVpvn("", 0); } - sv_upgrade(s->var, SVt_PV); + SvUPGRADE(s->var, SVt_PV); code = PerlIOBase_pushed(aTHX_ f, mode, Nullsv, tab); if ((PerlIOBase(f)->flags) & PERLIO_F_TRUNCATE) SvCUR(s->var) = 0; diff --git a/ext/PerlIO/t/scalar.t b/ext/PerlIO/t/scalar.t index 4e6615e799..58ef97f6fe 100644 --- a/ext/PerlIO/t/scalar.t +++ b/ext/PerlIO/t/scalar.t @@ -10,7 +10,7 @@ BEGIN { } $| = 1; -print "1..23\n"; +print "1..24\n"; my $fh; my $var = "ok 2\n"; @@ -120,3 +120,9 @@ close($dup); open $fh, '<', \42; print <$fh> eq "42" ? "ok 23\n" : "not ok 23\n"; close $fh; + +# reading from magic scalars + +{ package P; sub TIESCALAR {bless{}} sub FETCH {"ok 24\n"} } +tie $p, P; open $fh, '<', \$p; +print <$fh>; |