mirror of
https://github.com/vim/vim.git
synced 2025-10-13 06:54:15 -04:00
patch 9.0.2124: INT overflow detection logic can be simplified
Problem: INT overflow logic can be simplified Solution: introduce trim_to_int() function closes: #13556 Signed-off-by: Ernie Rael <errael@raelity.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
df63da98d8
commit
2b0882fa65
11
src/ops.c
11
src/ops.c
@@ -230,8 +230,8 @@ shift_line(
|
||||
int call_changed_bytes) // call changed_bytes()
|
||||
{
|
||||
long long count;
|
||||
long i, j;
|
||||
long sw_val = get_sw_value_indent(curbuf);
|
||||
int i, j;
|
||||
int sw_val = trim_to_int(get_sw_value_indent(curbuf));
|
||||
|
||||
count = (long long)get_indent(); // get current indent
|
||||
|
||||
@@ -263,14 +263,11 @@ shift_line(
|
||||
count += (long long)sw_val * (long long)amount;
|
||||
}
|
||||
|
||||
if (count > INT_MAX)
|
||||
count = INT_MAX;
|
||||
|
||||
// Set new indent
|
||||
if (State & VREPLACE_FLAG)
|
||||
change_indent(INDENT_SET, (int)count, FALSE, NUL, call_changed_bytes);
|
||||
change_indent(INDENT_SET, trim_to_int(count), FALSE, NUL, call_changed_bytes);
|
||||
else
|
||||
(void)set_indent((int)count, call_changed_bytes ? SIN_CHANGED : 0);
|
||||
(void)set_indent(trim_to_int(count), call_changed_bytes ? SIN_CHANGED : 0);
|
||||
}
|
||||
|
||||
/*
|
||||
|
Reference in New Issue
Block a user