Re: [PATCH v2] autocrlf: Make it work also for un-normalized repositories
- From
Eyvind Bernhardsen <eyvind.bernhardsen@gmail.com>
- Date
- May 12, 2010, 06:33 UTC
- Message-ID
- <75EA5FF3-4F82-4261-AF2A-D6E7182EECE5@gmail.com>
- In-Reply-To
- <20100512061646.GL14069@dpotapov.dyndns.org>
On 12. mai 2010, at 08.16, Dmitry Potapov <dpotapov@gmail.com> wrote:
Show 24 quoted lines
> On Wed, May 12, 2010 at 12:37:57AM +0200, Finn Arne Gangstad wrote:
>> @@ -203,6 +247,11 @@ static int crlf_to_worktree(const char *path,
>> const char *src, size_t len,
>> return 0;
>>
>> if (action == CRLF_GUESS) {
>> + /* If we have any CR or CRLF line endings, we do not touch
>> it */
>> + /* This is the new safer autocrlf-handling */
>> + if (stats.cr > 0 || stats.crlf > 0)
>> + return 0;
>> +
>> /* If we have any bare CR characters, we're not going to
>> touch it */
>> if (stats.cr != stats.crlf)
>> return 0;
>
> If there is no CR then there is no CRLF and certainly no bare CR
> characters. So, all above checks can be replaced with one:
>
> if (stats.cr > 0)
> return 0;
>
> Other than that, I really like your patch.Keeping the tests separate helps merging with my patch. The idea is to not do the "safe autocrlf" test when crlf=auto, so in that case the CR test is still needed.
-- Eyvind