commit - cee4532d76c69b664ebe0589c68439cf0b8054d7
commit + ea371198ec8b032e31b86ddef231db39756a3b44
blob - 579801c1a62932c7ba58ad585ac0ba45e1ddbf06
blob + d16e7c64d5614b5a492b3e1f0528b8742b178362
--- tog/tog.c
+++ tog/tog.c
err = got_repo_match_object_id(&start_id, NULL,
s->head_ref_name ? s->head_ref_name : GOT_REF_HEAD,
GOT_OBJ_TYPE_COMMIT, &tog_refs, s->repo);
- if (err)
- return err;
+ if (err) {
+ if (s->head_ref_name == NULL ||
+ err->code != GOT_ERR_NOT_REF)
+ return err;
+ /* Try to cope with deleted references. */
+ free(s->head_ref_name);
+ s->head_ref_name = NULL;
+ err = got_repo_match_object_id(&start_id,
+ NULL, GOT_REF_HEAD, GOT_OBJ_TYPE_COMMIT,
+ &tog_refs, s->repo);
+ if (err)
+ return err;
+ }
free(s->start_id);
s->start_id = start_id;
s->thread_args.start_id = s->start_id;