apply: do not get confused by symlinks in the middle
[gitweb.git] / convert-objects.c
index 4809f9199fa21dcd95ab508e26196080d49e8e88..cefbcebdcaa0a085745c81b2ed1103e9575cb635 100644 (file)
@@ -88,7 +88,7 @@ static int write_subdirectory(void *buffer, unsigned long size, const char *base
                unsigned int mode;
                char *slash, *origpath;
 
-               if (!path || sscanf(buffer, "%o", &mode) != 1)
+               if (!path || strtoul_ui(buffer, 8, &mode))
                        die("bad tree conversion");
                mode = convert_mode(mode);
                path++;