diff options
Diffstat (limited to 'merge-ll.c')
-rw-r--r-- | merge-ll.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/merge-ll.c b/merge-ll.c index 740b8c6bfd..478983309d 100644 --- a/merge-ll.c +++ b/merge-ll.c @@ -243,7 +243,14 @@ static enum ll_merge_result ll_ext_merge(const struct ll_merge_driver *fn, unlink_or_warn(temp[i]); strbuf_release(&cmd); strbuf_release(&path_sq); - ret = (status > 0) ? LL_MERGE_CONFLICT : status; + + if (!status) + ret = LL_MERGE_OK; + else if (status <= 128) + ret = LL_MERGE_CONFLICT; + else + /* died due to a signal: WTERMSIG(status) + 128 */ + ret = LL_MERGE_ERROR; return ret; } |