On Wed, Jun 10, 2015 at 7:56 AM, Junio C Hamano <gitster@xxxxxxxxx> wrote: > Paul Tan <pyokagan@xxxxxxxxx> writes: > >> /** >> + * Appends merge candidates from FETCH_HEAD that are not marked not-for-merge >> + * into merge_heads. >> + */ > > Hmph, I vaguely recall doing that in C elsewhere already, even > though I do not remember where offhand... Right, handle_fetch_head() in builtin/merge.c. It looks up the commit IDs into commit objects though, which is not required for git-pull. We only need the list of hashes. >> +static void get_merge_heads(struct sha1_array *merge_heads) >> +{ >> + const char *filename = git_path("FETCH_HEAD"); >> + FILE *fp; >> + struct strbuf sb = STRBUF_INIT; >> + unsigned char sha1[GIT_SHA1_RAWSZ]; >> + >> + if (!(fp = fopen(filename, "r"))) >> + die_errno(_("could not open '%s' for reading"), filename); >> + while(strbuf_getline(&sb, fp, '\n') != EOF) { > > Missing SP after "while" OK >> + if (get_sha1_hex(sb.buf, sha1)) >> + continue; /* invalid line: does not start with SHA1 */ >> + if (starts_with(sb.buf + GIT_SHA1_HEXSZ, "\tnot-for-merge")) > > Look for "\tnot-for-merge\t" instead? Right, it's better to be stricter. Thanks, Paul -- 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