Skip to content

Commit

Permalink
Merge branch 'jm/maint-misc-fix' into maint
Browse files Browse the repository at this point in the history
* jm/maint-misc-fix:
  read_gitfile_gently: use ssize_t to hold read result
  remove tests of always-false condition
  rerere.c: diagnose a corrupt MERGE_RR when hitting EOF between TAB and '\0'
  • Loading branch information
gitster committed May 30, 2011
2 parents a059240 + b1905ae commit 5b42477
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 5 deletions.
2 changes: 1 addition & 1 deletion fsck.c
Expand Up @@ -349,7 +349,7 @@ int fsck_error_function(struct object *obj, int type, const char *fmt, ...)
va_list ap;
struct strbuf sb = STRBUF_INIT;

strbuf_addf(&sb, "object %s:", obj->sha1?sha1_to_hex(obj->sha1):"(null)");
strbuf_addf(&sb, "object %s:", sha1_to_hex(obj->sha1));

va_start(ap, fmt);
strbuf_vaddf(&sb, fmt, ap);
Expand Down
10 changes: 8 additions & 2 deletions rerere.c
Expand Up @@ -47,8 +47,14 @@ static void read_rr(struct string_list *rr)
name = xstrdup(buf);
if (fgetc(in) != '\t')
die("corrupt MERGE_RR");
for (i = 0; i < sizeof(buf) && (buf[i] = fgetc(in)); i++)
; /* do nothing */
for (i = 0; i < sizeof(buf); i++) {
int c = fgetc(in);
if (c < 0)
die("corrupt MERGE_RR");
buf[i] = c;
if (c == 0)
break;
}
if (i == sizeof(buf))
die("filename too long");
string_list_insert(rr, buf)->util = name;
Expand Down
2 changes: 1 addition & 1 deletion setup.c
Expand Up @@ -275,7 +275,7 @@ const char *read_gitfile_gently(const char *path)
const char *slash;
struct stat st;
int fd;
size_t len;
ssize_t len;

if (stat(path, &st))
return NULL;
Expand Down
2 changes: 1 addition & 1 deletion transport.c
Expand Up @@ -156,7 +156,7 @@ static void set_upstreams(struct transport *transport, struct ref *refs,
continue;
if (!ref->peer_ref)
continue;
if (!ref->new_sha1 || is_null_sha1(ref->new_sha1))
if (is_null_sha1(ref->new_sha1))
continue;

/* Follow symbolic refs (mainly for HEAD). */
Expand Down

0 comments on commit 5b42477

Please sign in to comment.