avoid overriding prototypes when the call can be fixed
authorRicardo Signes <rjbs@cpan.org>
Wed, 10 Oct 2012 01:57:14 +0000 (21:57 -0400)
committerRicardo Signes <rjbs@cpan.org>
Mon, 12 Nov 2012 14:18:39 +0000 (09:18 -0500)
We don't need to call share with an ampersand.  We can just call it in
the way its prototype implies.  While we're at it, we can fix the
prototype that we use when threads::shared can't be loaded.  Also,
there's no need to fake up lock, because it's already a do-nothing weak
keyword without threads.

lib/perl5db.pl

index b605b1b..c74a4e2 100644 (file)
@@ -866,8 +866,7 @@ BEGIN {
         lock($DBGR);
         print "Threads support enabled\n";
     } else {
-        *lock  = sub(*) {};
-        *share = sub(*) {};
+        *share = sub(\[$@%]) {};
     }
 }
 
@@ -893,8 +892,7 @@ BEGIN {
 }
 
 # without threads, $filename is not defined until DB::DB is called
-# We need the & here because we want to override the prototype.
-&share(\$main::{'_<'.$filename}) if defined $filename;
+share($main::{'_<'.$filename}) if defined $filename;
 
 # Command-line + PERLLIB:
 # Save the contents of @INC before they are modified elsewhere.