aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/mbyte.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2024-02-10 22:19:51 +0800
committerGitHub <noreply@github.com>2024-02-10 22:19:51 +0800
commit470c450fd258ded6200305d28b35e7243520595f (patch)
treeec1bde5294d6227a435c20979e32c7bfd4e74ec8 /src/nvim/mbyte.c
parent71429c90eeb979c6062ee845e516d28b5e6ce402 (diff)
parent00e785b17fde8c476031e3c24ea77bed45b88a89 (diff)
downloadrneovim-470c450fd258ded6200305d28b35e7243520595f.tar.gz
rneovim-470c450fd258ded6200305d28b35e7243520595f.tar.bz2
rneovim-470c450fd258ded6200305d28b35e7243520595f.zip
Merge pull request #27418 from zeertzjq/vim-9.1.0089
vim-patch:9.1.{0089,0093}: qsort() comparison function fixes
Diffstat (limited to 'src/nvim/mbyte.c')
-rw-r--r--src/nvim/mbyte.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/nvim/mbyte.c b/src/nvim/mbyte.c
index 8583b236c7..fd353d8a67 100644
--- a/src/nvim/mbyte.c
+++ b/src/nvim/mbyte.c
@@ -2792,8 +2792,10 @@ static int tv_nr_compare(const void *a1, const void *a2)
{
const listitem_T *const li1 = tv_list_first(*(const list_T **)a1);
const listitem_T *const li2 = tv_list_first(*(const list_T **)a2);
+ const varnumber_T n1 = TV_LIST_ITEM_TV(li1)->vval.v_number;
+ const varnumber_T n2 = TV_LIST_ITEM_TV(li2)->vval.v_number;
- return (int)(TV_LIST_ITEM_TV(li1)->vval.v_number - TV_LIST_ITEM_TV(li2)->vval.v_number);
+ return n1 == n2 ? 0 : n1 > n2 ? 1 : -1;
}
/// "setcellwidths()" function