On Mon, May 15, 2017 at 11:31 AM, Jonathan Tan <jonathantanmy@xxxxxxxxxx> wrote: > On 05/13/2017 09:01 PM, Stefan Beller wrote: >> >> In a later patch, I want to propose an option to detect&color >> moved lines in a diff, which cannot be done in a one-pass over >> the diff. Instead we need to go over the whole diff twice, >> because we cannot detect the first line of the two corresponding >> lines (+ and -) that got moved. >> >> So to prepare the diff machinery for two pass algorithms >> (i.e. buffer it all up and then operate on the result), >> move all emissions to places, such that the only emitting >> function is emit_line_0. >> >> In later patches we may pass lines that are not colored to >> the central function emit_line_0, so we >> need to emit the color only when it is non-NULL. > > > The diff below seems to just make emit_line_0 allow NULL for set and reset, > unlike what the commit message above describes. (And is that necessary? > Couldn't the caller just pass "" if they don't want any setting and/or > resetting?) > They could just give ""; but instead of having an empty system call I thought about this short cut. I'll reword the commit message. Thanks, Stefan