diff options
author | Albert Dvornik <bert@genscan.com> | 1998-07-22 11:14:46 -0400 |
---|---|---|
committer | Gurusamy Sarathy <gsar@cpan.org> | 1998-07-22 19:37:41 +0000 |
commit | b61d194ccc4ffeadd2cf0ae98317321309a3dd04 (patch) | |
tree | e8c522914726f0d2e04dd9faf378ad779278cccc /ext | |
parent | e010571f6cb51179682ace9243bd94062586abdf (diff) | |
download | perl-b61d194ccc4ffeadd2cf0ae98317321309a3dd04.tar.gz |
don't use qualify() in class methods
Message-Id: <tqbtqhlmu1.fsf_-_@puma.genscan.com>
Subject: [PATCH 5.005-MAYBE] Bug in IO::Handle->input_record_separator
p4raw-id: //depot/perl@1645
Diffstat (limited to 'ext')
-rw-r--r-- | ext/IO/lib/IO/Handle.pm | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/ext/IO/lib/IO/Handle.pm b/ext/IO/lib/IO/Handle.pm index af3df7125d..7927641f7f 100644 --- a/ext/IO/lib/IO/Handle.pm +++ b/ext/IO/lib/IO/Handle.pm @@ -423,21 +423,19 @@ sub stat { ## sub autoflush { - my $old = new SelectSaver qualify($_[0], caller); + my $old = new SelectSaver qualify($_[0], caller) if ref($_[0]); my $prev = $|; $| = @_ > 1 ? $_[1] : 1; $prev; } sub output_field_separator { - my $old = new SelectSaver qualify($_[0], caller); my $prev = $,; $, = $_[1] if @_ > 1; $prev; } sub output_record_separator { - my $old = new SelectSaver qualify($_[0], caller); my $prev = $\; $\ = $_[1] if @_ > 1; $prev; @@ -450,55 +448,54 @@ sub input_record_separator { } sub input_line_number { + # localizing $. doesn't work as advertised. grrrrrr. my $prev = $.; $. = $_[1] if @_ > 1; $prev; } sub format_page_number { - my $old = new SelectSaver qualify($_[0], caller); + my $old = new SelectSaver qualify($_[0], caller) if ref($_[0]); my $prev = $%; $% = $_[1] if @_ > 1; $prev; } sub format_lines_per_page { - my $old = new SelectSaver qualify($_[0], caller); + my $old = new SelectSaver qualify($_[0], caller) if ref($_[0]); my $prev = $=; $= = $_[1] if @_ > 1; $prev; } sub format_lines_left { - my $old = new SelectSaver qualify($_[0], caller); + my $old = new SelectSaver qualify($_[0], caller) if ref($_[0]); my $prev = $-; $- = $_[1] if @_ > 1; $prev; } sub format_name { - my $old = new SelectSaver qualify($_[0], caller); + my $old = new SelectSaver qualify($_[0], caller) if ref($_[0]); my $prev = $~; $~ = qualify($_[1], caller) if @_ > 1; $prev; } sub format_top_name { - my $old = new SelectSaver qualify($_[0], caller); + my $old = new SelectSaver qualify($_[0], caller) if ref($_[0]); my $prev = $^; $^ = qualify($_[1], caller) if @_ > 1; $prev; } sub format_line_break_characters { - my $old = new SelectSaver qualify($_[0], caller); my $prev = $:; $: = $_[1] if @_ > 1; $prev; } sub format_formfeed { - my $old = new SelectSaver qualify($_[0], caller); my $prev = $^L; $^L = $_[1] if @_ > 1; $prev; |