]> Kevux Git Server - rit/commit
apply.c: fix -p argument parsing
authorMirko Faina <mroik@delayed.space>
Mon, 16 Mar 2026 00:51:16 +0000 (01:51 +0100)
committerJunio C Hamano <gitster@pobox.com>
Mon, 16 Mar 2026 19:54:47 +0000 (12:54 -0700)
commitd05d84c5f507e8b973982e9cf3a27a07cd94fcb8
treea17f3e1b7f52a20e30dde86eea648eafaf6793d0
parent67ad42147a7acc2af6074753ebd03d904476118f
apply.c: fix -p argument parsing

"git apply" has an option -p that takes an integer as its argument.
Unfortunately the function apply_option_parse_p() in charge of parsing
this argument uses atoi() to convert from string to integer, which
allows a non-digit after the number (e.g. "1q") to be silently ignored.
As a consequence, an argument that does not begin with a digit silently
becomes a zero. Despite this command working fine when a non-positive
argument is passed, it might be useful for the end user to know that
their input contains non-digits that might've been unintended.

Replace atoi() with strtol_i() to catch malformed inputs.

Signed-off-by: Mirko Faina <mroik@delayed.space>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
apply.c
t/t4120-apply-popt.sh