Junio C Hamano <[email protected]> writes:
>> - fprintf(o->file, "%s%s--- %s%s%s\n",
>> - line_prefix, meta, ecbdata->label_path[0], reset,
>> name_a_tab);
>> - fprintf(o->file, "%s%s+++ %s%s%s\n",
>> - line_prefix, meta, ecbdata->label_path[1], reset,
>> name_b_tab);
>> + emit_line_fmt(o, meta, reset, "--- %s%s\n",
>> + ecbdata->label_path[0], name_a_tab);
>> + emit_line_fmt(o, meta, reset, "+++ %s%s\n",
>> + ecbdata->label_path[1], name_b_tab);
>
> How is the loss of line_prefix from this call site compensated?
OK, emit_line_0() has already been aware of line_prefix, so that is
how the loss of line_prefix in the above is accounted for. We are
good here.
>> ecbdata->label_path[0] = ecbdata->label_path[1] = NULL;
>> }
>>
>> @@ -1349,7 +1346,7 @@ static void fn_out_consume(void *priv, char *line,
>> unsigned long len)
>> diff_words_flush(ecbdata);
>> if (ecbdata->diff_words->type == DIFF_WORDS_PORCELAIN) {
>> emit_line(o, context, reset, line, len);
>> - fputs("~\n", o->file);
>> + emit_line(o, NULL, NULL, "~\n", 2);
So unless we have some magic here, we would see an extra line-prefix
before that "~\n" thing, no?
>> } else {
>> /*
>> * Skip the prefix character, if any. With