Code

sscanf/strtoul: parse integers robustly
[git.git] / convert-objects.c
index 4809f9199fa21dcd95ab508e26196080d49e8e88..cf03bcfe5aa4f95ec4b6384bc38d63b1e453f731 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) != 1)
                        die("bad tree conversion");
                mode = convert_mode(mode);
                path++;