On Mon, 14 Jul 2008, Nicolas Pitre wrote: > Since commit 8eca0b47ff1598a6d163df9358c0e0c9bd92d4c8, it is possible > for read_sha1_file() to return NULL even with existing objects when they > are corrupted. Previously a corrupted object would have terminated the > program immediately, effectively making read_sha1_file() return NULL > only when specified object is not found. > > Let's restore this behavior for all users of read_sha1_file() and > provide a separate function with the ability to not terminate when > bad objects are encountered. > > Signed-off-by: Nicolas Pitre <nico@xxxxxxx> Grrrr. Forgot to 'git add' one file. So this goes with the same commit: diff --git a/cache.h b/cache.h index 4a8b125..bc52af6 100644 --- a/cache.h +++ b/cache.h @@ -540,6 +540,9 @@ extern int write_sha1_file(void *buf, unsigned long len, const char *type, unsig extern int pretend_sha1_file(void *, unsigned long, enum object_type, unsigned char *); extern int force_object_loose(const unsigned char *sha1, time_t mtime); +/* just like read_sha1_file(), but non fatal in presence of bad objects */ +extern void *read_object(const unsigned char *sha1, enum object_type *type, unsigned long *size); + extern int check_sha1_signature(const unsigned char *sha1, void *buf, unsigned long size, const char *type); extern int move_temp_to_file(const char *tmpfile, const char *filename); -- 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