Change 34845 by [EMAIL PROTECTED] on 2008/11/16 18:02:49
Subject: [PATCH] Make B::walksymtable not recurse into packages that
are actually main::, but have a different name.
From: Florian Ragwitz <[EMAIL PROTECTED]>
Date: Thu, 13 Nov 2008 21:34:12 +0100
Message-Id: <[EMAIL PROTECTED]>
Affected files ...
... //depot/perl/ext/B/B.pm#91 edit
Differences ...
==== //depot/perl/ext/B/B.pm#91 (text) ====
Index: perl/ext/B/B.pm
--- perl/ext/B/B.pm#90~33658~ 2008-04-07 10:36:41.000000000 -0700
+++ perl/ext/B/B.pm 2008-11-16 10:02:49.000000000 -0800
@@ -7,7 +7,7 @@
#
package B;
-our $VERSION = '1.21';
+our $VERSION = '1.22';
use XSLoader ();
require Exporter;
@@ -240,7 +240,7 @@
$fullname = "*main::".$prefix.$sym;
if ($sym =~ /::$/) {
$sym = $prefix . $sym;
- if ($sym ne "main::" && $sym ne "<none>::" && &$recurse($sym)) {
+ if (svref_2object(\*$sym)->NAME ne "main::" && $sym ne "<none>::"
&& &$recurse($sym)) {
walksymtable(\%$fullname, $method, $recurse, $sym);
}
} else {
End of Patch.