blame: check return value from read_sha1_file()

Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Junio C Hamano 2007-08-25 01:26:20 -07:00
parent 0058a33a8e
commit ab43e495dd

View file

@ -98,6 +98,10 @@ static char *fill_origin_blob(struct origin *o, mmfile_t *file)
num_read_blob++; num_read_blob++;
file->ptr = read_sha1_file(o->blob_sha1, &type, file->ptr = read_sha1_file(o->blob_sha1, &type,
(unsigned long *)(&(file->size))); (unsigned long *)(&(file->size)));
if (!file->ptr)
die("Cannot read blob %s for path %s",
sha1_to_hex(o->blob_sha1),
o->path);
o->file = *file; o->file = *file;
} }
else else
@ -1384,6 +1388,9 @@ static void get_commit_info(struct commit *commit,
unsigned long size; unsigned long size;
commit->buffer = commit->buffer =
read_sha1_file(commit->object.sha1, &type, &size); read_sha1_file(commit->object.sha1, &type, &size);
if (!commit->buffer)
die("Cannot read commit %s",
sha1_to_hex(commit->object.sha1));
} }
ret->author = author_buf; ret->author = author_buf;
get_ac_line(commit->buffer, "\nauthor ", get_ac_line(commit->buffer, "\nauthor ",
@ -2382,6 +2389,10 @@ int cmd_blame(int argc, const char **argv, const char *prefix)
sb.final_buf = read_sha1_file(o->blob_sha1, &type, sb.final_buf = read_sha1_file(o->blob_sha1, &type,
&sb.final_buf_size); &sb.final_buf_size);
if (!sb.final_buf)
die("Cannot read blob %s for path %s",
sha1_to_hex(o->blob_sha1),
path);
} }
num_read_blob++; num_read_blob++;
lno = prepare_lines(&sb); lno = prepare_lines(&sb);