Re: [PATCH 1/2] fsck_commit_buffer(): do not special case the last validation
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Apr 15, 2016, 13:41 UTC
- Message-ID
- <alpine.DEB.2.20.1604151538230.2967@virtualbox>
- In-Reply-To
- <20160414180709.28968-1-gitster@pobox.com>
Hi Junio,
On Thu, 14 Apr 2016, Junio C Hamano wrote:
Show 23 quoted lines
> The pattern taken by all the validations in this function is:
>
> if (notice a violation exists) {
> err = report(... VIOLATION_KIND ...);
> if (err)
> return err;
> }
>
> where report() returns zero if specified kind of violation is set to
> be ignored, and otherwise shows an error message and returns non-zero.
>
> The last validation in the function immediately after the function
> returns 0 to declare "all good" can cheat and directly return the
> return value from report(), and the current code does so, i.e.
>
> if (notice a violation exists)
> return report(... VIOLATION_KIND ...);
> return 0;
>
> But that is a selfish code that declares it is the ultimate and
> final form of the function, never to be enhanced later. To allow
> and invite future enhancements, make the last test follow the same
> pattern.FWIW I agree with this reasoning. Sorry for leaving this to you to clean up.
Ciao, Dscho