On Thu, Jul 28, 2016 at 05:44:08PM -0700, Stefan Beller wrote: > +static const char *remote_submodule_branch(const char *path) > +{ > + const struct submodule *sub; > + gitmodules_config(); > + git_config(submodule_config, NULL); > + > + sub = submodule_from_path(null_sha1, path); > + if (!sub->branch) > + return "master"; > + > + return sub->branch; > +} Coverity complains about "sub" being NULL here, and indeed, it seems like an easy segfault: $ ./git submodule--helper remote-branch foo Segmentation fault I guess this should return NULL in that case. But then this... > +static int resolve_remote_submodule_branch(int argc, const char **argv, > + const char *prefix) > +{ > + struct strbuf sb = STRBUF_INIT; > + if (argc != 2) > + die("submodule--helper remote-branch takes exactly one arguments, got %d", argc); > + > + printf("%s", remote_submodule_branch(argv[1])); > + strbuf_release(&sb); > + return 0; > +} would need to handle the NULL return, as well. So maybe "master" or the empty string would be better. I haven't followed the topic closely enough to have an opinion. -Peff -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html