Re: [GSoC][RFC] Replace use of atoi() with strtol_i(), as a microproject
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jan 10, 2024, 18:44 UTC
- Message-ID
- <xmqqa5pdav04.fsf@gitster.g>
- In-Reply-To
- <F6ejgAfr2IMRNR3Tq0CDTHeT9xMWzJ9ley8M_fnSX97ayRNRp_CEgA62WdtOooi9bha1WJPGB53ptJYQFII2lCbIflwgNvbIaefw7nK8w7M=@proton.me>
Mohit Marathe <mohitmarathe@proton.me> writes:
> I took a closer look at `builtin/patch-id.c` and it seems replacing > `atoi()` (which is used to parse numbers in the hunk header) wouldn't > improve anything, unless I'm missing something.
You can of course notice an invalid patch that places non-digit to the hunk header and error out with such a change. If we are reading output from Git that we are invoking, hopefully we will not see such an invalid patch, but the command is designed to read arbitrary input like a patch e-mail you received over the network, so I do not think it is fair to say there is no merit to such a change, even though I agree that it may not matter all that much.
A corrupt patch may be getting a nonsense patch-ID with the current code and hopefully is not matching other patches that are not corrupt, but with such a change, a corrupt patch may not be getting any patch-ID and a loop that computes patch-ID for many files and try to match them up might need to be rewritten to take the new failure case into account.