Hi,
On Thu, 13 Apr 2006, Junio C Hamano wrote:
For an added line, xdl_emit_diffrec(rec, size, " ", 1, ecb) is
called, which gives mb[0].ptr = " " and mb[1].ptr = <the
contents of the line>; fn_diffstat() is called with (nbuf == 2).
Silly me. I did not check that code, but assumed that mb Just Contains
Whole Lines...
Instead of driving diffstat code from run_diff(),
run_diff_cmd(), and builtin_diff(), I think it would be much
cleaner to define diff_flush_stat() as a sibling to
diff_flush_raw() and diff_flush_patch(), and bypass the
run_diff() chain.
I guess you're right. It is also more work :-(
There is another bug: if a file is created, you see "ev/null" as filename.
Ugly.
I'll try to fix it.
Ciao,
Dscho