X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;ds=sidebyside;f=merge-recursive.c;h=c96e1a734cb0c258cd4adb4f00e247abdf804640;hb=0b59451c1be6be3d0df80be9dc8aeedb355ca44b;hp=87cd8709bbc99db559f3892c048ec111673a2566;hpb=21666f1aae4e890d8f50924f9e80763b27e6a45d;p=git.git diff --git a/merge-recursive.c b/merge-recursive.c index 87cd8709b..c96e1a734 100644 --- a/merge-recursive.c +++ b/merge-recursive.c @@ -570,7 +570,7 @@ static void update_file_flags(const unsigned char *sha, if (type != OBJ_BLOB) die("blob expected for %s '%s'", sha1_to_hex(sha), path); - if (S_ISREG(mode)) { + if (S_ISREG(mode) || (!has_symlinks && S_ISLNK(mode))) { int fd; if (mkdir_p(path, 0777)) die("failed to create path %s: %s", path, strerror(errno)); @@ -591,6 +591,7 @@ static void update_file_flags(const unsigned char *sha, mkdir_p(path, 0777); unlink(path); symlink(lnk, path); + free(lnk); } else die("do not know what to do with %06o %s '%s'", mode, sha1_to_hex(sha), path);