Junio C Hamano wrote: >> diff --git a/builtin/for-each-ref.c b/builtin/for-each-ref.c >> index 2ff4e54..04e35ba 100644 >> --- a/builtin/for-each-ref.c >> +++ b/builtin/for-each-ref.c >> @@ -23,6 +23,7 @@ typedef enum { FIELD_STR, FIELD_ULONG, FIELD_TIME } cmp_type; >> struct atom_value { >> const char *s; >> unsigned long ul; /* used for sorting when not FIELD_STR */ >> + int color : 2; /* 1 indicates color, 2 indicates color-reset */ >> }; > > Hmph. It looks wasteful to have this information in atom_value. I wanted to avoid an ugly global. On the other end of the spectrum, modifying the various functions to take an extra reset_color_leakage parameter seems much too intrusive. Do you have any suggestions? > Isn't a new single bit in "struct refinfo" all you need to keep > track of, to see the last %(color:something) you ever saw is for a > color that is not reset? No; because I can only look at one atom and set v->color, at a time. -- 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