Change 13914 by jhi@alpha on 2001/12/28 00:22:10
Subject: [PATCH] Re: B::walksymtable oddness
From: "Mattia Barbon" <[EMAIL PROTECTED]>
Date: Thu, 27 Dec 2001 19:14:24 +0100
Message-ID: <3C2B7310.861.18820D0@localhost>
Affected files ...
.... //depot/perl/ext/B/B.pm#42 edit
Differences ...
==== //depot/perl/ext/B/B.pm#42 (text) ====
Index: perl/ext/B/B.pm
--- perl/ext/B/B.pm.~1~ Thu Dec 27 17:30:05 2001
+++ perl/ext/B/B.pm Thu Dec 27 17:30:05 2001
@@ -211,18 +211,18 @@
my ($symref, $method, $recurse, $prefix) = @_;
my $sym;
my $ref;
- no strict 'vars';
- local(*glob);
+ my $fullname;
+ no strict 'refs';
$prefix = '' unless defined $prefix;
while (($sym, $ref) = each %$symref) {
- *glob = "*main::".$prefix.$sym;
+ $fullname = "*main::".$prefix.$sym;
if ($sym =~ /::$/) {
$sym = $prefix . $sym;
if ($sym ne "main::" && $sym ne "<none>::" && &$recurse($sym)) {
- walksymtable(\%glob, $method, $recurse, $sym);
+ walksymtable(\%$fullname, $method, $recurse, $sym);
}
} else {
- svref_2object(\*glob)->EGV->$method();
+ svref_2object(\*$fullname)->$method();
}
}
}
End of Patch.