"Johannes Schindelin via GitGitGadget" <gitgitgadget@xxxxxxxxx> writes: > From: Johannes Schindelin <johannes.schindelin@xxxxxx> > > CodeQL points out that `lookup_commit_reference()` can return NULL > values. > > Signed-off-by: Johannes Schindelin <johannes.schindelin@xxxxxx> > --- > object-name.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/object-name.c b/object-name.c > index 76749fbfe652..ca54dad2f4c8 100644 > --- a/object-name.c > +++ b/object-name.c > @@ -1106,7 +1106,7 @@ static enum get_oid_result get_parent(struct repository *r, > if (ret) > return ret; > commit = lookup_commit_reference(r, &oid); > - if (repo_parse_commit(r, commit)) > + if (!commit || repo_parse_commit(r, commit)) > return MISSING_OBJECT; Most of the time, the check for "ret" we see in the pre-context, which is a result of get_oid_1(), would prevent an oid that is not a valid name for a committish to even reach this code, I would think, but with possible repository corruption, we may fail to "lookup" the commit, so this is a good correction, I would think. Thanks. > if (!idx) { > oidcpy(result, &commit->object.oid);