Problem: potential buffer underflow in insertchar()
Solution: verify that end_len is larger than zero
(jinyaoguo)
When parsing the end-comment leader, end_len can be zero if
copy_option_part() writes no characters. The existing check
unconditionally accessed lead_end[end_len-1], causing potential
underflow when end_len == 0.
This change adds an end_len > 0 guard to ensure we only index lead_end
if there is at least one character.
closes: #17476
Signed-off-by: jinyaoguo <guo846@purdue.edu>
Signed-off-by: Christian Brabandt <cb@256bit.org>
i -= middle_len;
// Check some expected things before we go on
- if (i >= 0 && lead_end[end_len - 1] == end_comment_pending)
+ if (i >= 0 && end_len > 0 && lead_end[end_len - 1] == end_comment_pending)
{
// Backspace over all the stuff we want to replace
backspace_until_column(i);
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 1443,
/**/
1442,
/**/