On 05/03/2014 10:12 PM, brian m. carlson wrote: > Signed-off-by: brian m. carlson <sandals@xxxxxxxxxxxxxxxxxxxx> > --- > bundle.c | 38 +++++++++++++++++++------------------- > 1 file changed, 19 insertions(+), 19 deletions(-) > > diff --git a/bundle.c b/bundle.c > index 1222952..798ba28 100644 > --- a/bundle.c > +++ b/bundle.c > @@ -11,11 +11,11 @@ > > static const char bundle_signature[] = "# v2 git bundle\n"; > > -static void add_to_ref_list(const unsigned char *sha1, const char *name, > +static void add_to_ref_list(const struct object_id *sha1, const char *name, > struct ref_list *list) > { > ALLOC_GROW(list->list, list->nr + 1, list->alloc); > - hashcpy(list->list[list->nr].sha1, sha1); > + hashcpy(list->list[list->nr].sha1, sha1->oid); > list->list[list->nr].name = xstrdup(name); > list->nr++; > } > @@ -39,7 +39,7 @@ static int parse_bundle_header(int fd, struct bundle_header *header, > /* The bundle header ends with an empty line */ > while (!strbuf_getwholeline_fd(&buf, fd, '\n') && > buf.len && buf.buf[0] != '\n') { > - unsigned char sha1[20]; > + struct object_id sha1; > int is_prereq = 0; > > if (*buf.buf == '-') { > @@ -53,9 +53,9 @@ static int parse_bundle_header(int fd, struct bundle_header *header, > * Prerequisites have object name that is optionally > * followed by SP and subject line. > */ > - if (get_sha1_hex(buf.buf, sha1) || > - (buf.len > 40 && !isspace(buf.buf[40])) || > - (!is_prereq && buf.len <= 40)) { > + if (get_sha1_hex(buf.buf, sha1.oid) || > + (buf.len > GIT_OID_HEXSZ && !isspace(buf.buf[GIT_OID_HEXSZ])) || > + (!is_prereq && buf.len <= GIT_OID_HEXSZ)) { > if (report_path) > error(_("unrecognized header: %s%s (%d)"), > (is_prereq ? "-" : ""), buf.buf, (int)buf.len); > @@ -63,9 +63,9 @@ static int parse_bundle_header(int fd, struct bundle_header *header, > break; > } else { > if (is_prereq) > - add_to_ref_list(sha1, "", &header->prerequisites); > + add_to_ref_list(&sha1, "", &header->prerequisites); > else > - add_to_ref_list(sha1, buf.buf + 41, &header->references); > + add_to_ref_list(&sha1, buf.buf + 41, &header->references); I think that 41 here is GIT_OID_HEXSZ + 1. > [...] Michael -- Michael Haggerty mhagger@xxxxxxxxxxxx http://softwareswirl.blogspot.com/ -- 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