chiark / gitweb /
git-debrebase: merge: Defeat evals which might try to trap merge_failed
[dgit.git] / git-debrebase
index 213728023f249305eb873722d305f3168a1cb0c4..c3bd7ff2cd287dd3054cf3e277017e8666cbfc2e 100755 (executable)
@@ -396,8 +396,12 @@ sub merge_failed ($$) {
     push @m, "Wreckage left in $wrecknoteprefix/*.";
 
     push @m, "See git-debrebase(1) section FAILED MERGES for suggestions.";
-    # ^ xxx this section does not yet exist
-    fail join '', map { "$_\n" } @m;
+
+    # use finish rather than fail, in case we are within an eval
+    # (that can happen inside walk!)
+    print STDERR "\n";
+    print STDERR "$us: $_\n" foreach @m;
+    finish 15;
 }
 
 sub mwrecknote ($$$) {