From fa1bb02feecc6f4fdaff36b2895f96803af07c6a Mon Sep 17 00:00:00 2001 From: Nicholas Clark Date: Tue, 18 Dec 2001 00:22:03 +0000 Subject: [PATCH] slightly more for Exporter.pm Message-ID: <20011218002203.M21702@plum.flirble.org> p4raw-id: //depot/perl@13748 --- lib/Exporter.pm | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/lib/Exporter.pm b/lib/Exporter.pm index daa78d5..bd55160 100644 --- a/lib/Exporter.pm +++ b/lib/Exporter.pm @@ -47,14 +47,15 @@ sub import { s/^&//, $export_cache->{$_} = 1 foreach (@$exports, @{"$pkg\::EXPORT_OK"}); } - my $heavy = $Verbose || $Debug; - unless ($heavy) { - # Try very hard not to use {} and hence have to enter scope on the foreach - # We bomb out of the loop with last as soon as heavy is set. + my $heavy; + # Try very hard not to use {} and hence have to enter scope on the foreach + # We bomb out of the loop with last as soon as heavy is set. + if ($args or $fail) { ($heavy = (/\W/ or $args and not exists $export_cache->{$_} - or @$fail and $_ eq $fail->[0] - or (@{"$pkg\::EXPORT_OK"} and $_ eq ${"$pkg\::EXPORT_OK"}[0]))) - and last + or @$fail and $_ eq $fail->[0])) and last + foreach (@_); + } else { + ($heavy = /\W/) and last foreach (@_); } return export $pkg, $callpkg, ($args ? @_ : ()) if $heavy; -- 2.7.4