In one code path we return a literal -1 and not a symbolic constant. The value -1 would be interpreted as TRANSACTION_NAME_CONFLICT, which is wrong. Use TRANSACTION_GENERIC_ERROR instead (that is the only other return value we have to choose from). Noticed-by: Michael Haggerty <mhagger@xxxxxxxxxxxx> Reviewed-by: Michael Haggerty <mhagger@xxxxxxxxxxxx> Signed-off-by: Martin Ågren <martin.agren@xxxxxxxxx> --- refs/files-backend.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/refs/files-backend.c b/refs/files-backend.c index 3d6363966..03df00275 100644 --- a/refs/files-backend.c +++ b/refs/files-backend.c @@ -2801,7 +2801,7 @@ static int lock_ref_for_update(struct files_ref_store *refs, strbuf_addf(err, "cannot lock ref '%s': " "error reading reference", original_update_refname(update)); - ret = -1; + ret = TRANSACTION_GENERIC_ERROR; goto out; } } else if (check_old_oid(update, &lock->old_oid, err)) { -- 2.14.1.460.g848a19d64