capture $@ immediately
Jesse Luehrs [Wed, 20 Oct 2010 20:19:31 +0000 (15:19 -0500)]
lib/Eval/Closure.pm

index e45cb98..0037337 100644 (file)
@@ -59,13 +59,14 @@ sub _clean_eval_closure {
     }
 
     my $code = eval _make_source(@_);
+    my $e = $@;
 
     if (!ref($code) || ref($code) ne 'CODE') {
         undef $code;
-        $@ = "The 'source' parameter must return a subroutine reference";
+        $e = "The 'source' parameter must return a subroutine reference";
     }
 
-    return ($code, $@);
+    return ($code, $e);
 }
 
 sub _make_source {