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.

Reply via email to