Don't lose Error.pm if $@ gets clobbered.
authorMichael G. Schwern <schwern@pobox.com>
Wed, 25 Jul 2012 03:21:10 +0000 (20:21 -0700)
committerEric Wong <normalperson@yhbt.net>
Fri, 27 Jul 2012 22:13:27 +0000 (22:13 +0000)
In older Perls, sometimes $@ can become unset between the eval and
checking $@.  Its safer to check the eval directly.

Signed-off-by: Michael G Schwern <schwern@pobox.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Eric Wong <normalperson@yhbt.net>
perl/Makefile.PL

index 87e1f62ff891e4e6e82ccef517c8ee8735012c70..887fa1b22ec7300987f5871029bf19e993d5a6ec 100644 (file)
@@ -41,8 +41,7 @@ my %pm = (
 
 # We come with our own bundled Error.pm. It's not in the set of default
 # Perl modules so install it if it's not available on the system yet.
-eval { require Error };
-if ($@ || $Error::VERSION < 0.15009) {
+if ( !eval { require Error } || $Error::VERSION < 0.15009) {
        $pm{'private-Error.pm'} = '$(INST_LIBDIR)/Error.pm';
 }