X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Fio%2Fargv.t;h=d6c895d6cc9fa806ebfc61a1d9934b9cab7c5734;hb=7de9d14ea5825e7555ec8154a1b3731aa00948b6;hp=33c4f1a8e7e848cf16b67f80ade45d581f525d66;hpb=98a392ecbb7845edc25cfe254ee96c1a58aa132c;p=p5sagit%2Fp5-mst-13.2.git diff --git a/t/io/argv.t b/t/io/argv.t old mode 100755 new mode 100644 index 33c4f1a..d6c895d --- a/t/io/argv.t +++ b/t/io/argv.t @@ -5,9 +5,9 @@ BEGIN { @INC = '../lib'; } -require "./test.pl"; +BEGIN { require "./test.pl"; } -plan(tests => 22); +plan(tests => 23); use File::Spec; @@ -38,6 +38,13 @@ is($x, "1a line\n2a line\n", '<> from two files'); is($x, "foo\n", ' from just STDIN'); } +{ + # 5.10 stopped autovivifying scalars in globs leading to a + # segfault when $ARGV is written to. + runperl( prog => 'eof()', stdin => "nothing\n" ); + is( 0+$?, 0, q(eof() doesn't segfault) ); +} + @ARGV = ('Io_argv1.tmp', 'Io_argv1.tmp', $devnull, 'Io_argv1.tmp'); while (<>) { $y .= $. . $_; @@ -56,7 +63,7 @@ close TRY or die "Could not close: $!"; @ARGV = ('Io_argv1.tmp', 'Io_argv2.tmp'); $^I = '_bak'; # not .bak which confuses VMS $/ = undef; -my $i = 6; +my $i = 7; while (<>) { s/^/ok $i\n/; ++$i; @@ -72,13 +79,16 @@ undef $^I; ok( eof TRY ); -ok( eof NEVEROPENED, 'eof() true on unopened filehandle' ); +{ + no warnings 'once'; + ok( eof NEVEROPENED, 'eof() true on unopened filehandle' ); +} open STDIN, 'Io_argv1.tmp' or die $!; @ARGV = (); ok( !eof(), 'STDIN has something' ); -is( <>, "ok 6\n" ); +is( <>, "ok 7\n" ); open STDIN, $devnull or die $!; @ARGV = ();