SEGV when lookup_* returns NULL
hoi :)
When trying to an unmodified GIT on a repository with submodules it segfaults a lot.
All the lookup_{blob,tree,commit} functions check that the object really is of the requested type and return NULL otherwise. However this NULL pointer is not checked in the calling functions.
Should we make lookup_* to just die when invoked on another object-type? Or modify all the callers? Is there a sane error-handling strategy besides dying in this case? Really checking all the return values in the whole chain would be a lot of work.
-- Martin Waitz