[PATCHv2.1] revision.h: turn rev_info.early_output back into an unsigned int
- From
SZEDER Gábor <szeder.dev@gmail.com>
- Date
- Jun 10, 2017, 11:41 UTC
- Message-ID
- <20170610114101.21026-1-szeder.dev@gmail.com>
- In-Reply-To
- <20170610064102.w4kp6omxdznfe7fa@sigill.intra.peff.net>
rev_info.early_output started out as an unsigned int in cdcefbc97 (Add "--early-output" log flag for interactive GUI use, 2007-11-03), but later it was turned into a single bit in a bit field in cc243c3ce (show: --ignore-missing, 2011-05-18) without explanation, though the code using it still expects it to be a regular integer type and uses it as a counter. Consequently, any even number given via '--early-output=<N>', or indeed a plain '--early-output' defaulting to 100 effectively disabled the feature.
Turn rev_info.early_output back into its origin unsigned int data type, making '--early-output' work again.
Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com> ---
> But the "users still expect" bit was a bit subtle to me, as I thought > you meant users of Git. But you mean that the feature itself is not a > boolean, but rather an integer count of how much early output to show.
Yeah, I wrote "callsites" first, but then realized it's not a function...
Here is the same patch with an updated commit message now saying "code using it" and "used as a counter" to make it clearer. It also mentions that an argumentless '--early-output' turns off the feature, too.
I won't resend the rest of the series.
revision.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/revision.h b/revision.h index a91dd3d5d..f96e7f7f4 100644 --- a/revision.h +++ b/revision.h @@ -74,8 +74,9 @@ struct rev_info { /* topo-sort */ enum rev_sort_order sort_order; - unsigned int early_output:1, - ignore_missing:1, + unsigned int early_output; + + unsigned int ignore_missing:1, ignore_missing_links:1; /* Traversal flags */
-- 2.13.0.420.g54001f015