Browse Source

rename_ref(): handle the case when the reflog of a ref does not exist

We tried to check if a reflog of a ref is a symlink without first
checking if it exists, which is a bug.

Signed-off-by: Miklos Vajna <vmiklos@frugalware.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Miklos Vajna 17 years ago committed by Junio C Hamano
parent
commit
450d4c0f5a
  1. 2
      refs.c

2
refs.c

@ -966,7 +966,7 @@ int rename_ref(const char *oldref, const char *newref, const char *logmsg) @@ -966,7 +966,7 @@ int rename_ref(const char *oldref, const char *newref, const char *logmsg)
const char *symref = NULL;
int is_symref = 0;

if (S_ISLNK(loginfo.st_mode))
if (log && S_ISLNK(loginfo.st_mode))
return error("reflog for %s is a symlink", oldref);

symref = resolve_ref(oldref, orig_sha1, 1, &flag);

Loading…
Cancel
Save