Re: [PATCH v3 1/5] Refactor pretty_print_commit arguments into a struct
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Oct 17, 2009, 17:05 UTC
- Message-ID
- <7vljja7xy8.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <9d3d0f0a6126afc86689138adf58ac7a12c43858.1255701207.git.trast@student.ethz.ch>
Thomas Rast <trast@student.ethz.ch> writes:
Show 13 quoted lines
> pretty_print_commit() has a bunch of rarely-used arguments, and > introducing more of them requires yet another update of all the call > sites. Refactor most of them into a struct to make future extensions > easier. > > The ones that stay "plain" arguments were chosen on the grounds that > all callers put real arguments there, whereas some callers have 0/NULL > for all arguments that were factored into the struct. > > We declare the struct 'const' to ensure none of the callers are bitten > by the changed (no longer call-by-value) semantics. > > Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Good idea, a slightly sloppy/careless execution.
The existing calls to format_commit_message() often take DATE_NORMAL to its "enum date_mode dmode" argument, and you replaced it with a pointer to a struct. DATE_NORMAL happens to be "0" and the compiler does not catch calls you forgot to convert in this patch.