diff options
Diffstat (limited to 'builtin')
-rw-r--r-- | builtin/apply.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/builtin/apply.c b/builtin/apply.c index 9c5724eacc..bc924ab2d0 100644 --- a/builtin/apply.c +++ b/builtin/apply.c @@ -3847,9 +3847,10 @@ static void add_index_file(const char *path, unsigned mode, void *buf, unsigned ce->ce_flags = create_ce_flags(0); ce->ce_namelen = namelen; if (S_ISGITLINK(mode)) { - const char *s = buf; + const char *s; - if (get_sha1_hex(s + strlen("Subproject commit "), ce->sha1)) + if (!skip_prefix(buf, "Subproject commit ", &s) || + get_sha1_hex(s, ce->sha1)) die(_("corrupt patch for submodule %s"), path); } else { if (!cached) { |