diff options
author | zeertzjq <zeertzjq@outlook.com> | 2024-02-10 22:19:51 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-10 22:19:51 +0800 |
commit | 470c450fd258ded6200305d28b35e7243520595f (patch) | |
tree | ec1bde5294d6227a435c20979e32c7bfd4e74ec8 /src/nvim/mbyte.c | |
parent | 71429c90eeb979c6062ee845e516d28b5e6ce402 (diff) | |
parent | 00e785b17fde8c476031e3c24ea77bed45b88a89 (diff) | |
download | rneovim-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.c | 4 |
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 |