> > So we don't want to die in list-objects.c. If we > > fail to fetch, then we will die on line 213 in rev-list.c. > > Why don't we want to die in list-objects.c? When --missing=error is > passed, fetch_if_missing retains its default value of 1, so > parse_tree_gently() will attempt to fetch it - and if it fails, I think > it's appropriate to die in list-objects.c (and this should be the > current behavior). On other values, e.g. --missing=allow-any, there is > no autofetch (since fetch_if_missing is 0), so it is correct not to die > in list-objects.c. After some in-office discussion, I should have checked line 213 in builtin/rev-list.c more thorougly. Indeed it is OK not to die in list-objects.c here, since builtin/rev-list.c already knows how to handle missing objects in the --missing=error circumstance.