vim-patch:9.0.0010: returning 0 for has('patch-9.0.0') is inconsistent

Problem:    Returning 0 for has('patch-9.0.0') is inconsistent.
Solution:   Make it return 1. (closes vim/vim#10640)

b0375d466e

Co-authored-by: Bram Moolenaar <Bram@vim.org>
This commit is contained in:
Jan Edmund Lazo
2025-11-29 15:06:13 -05:00
parent d4a8d169a2
commit 26641c0c56
2 changed files with 7 additions and 1 deletions

View File

@@ -2543,11 +2543,14 @@ bool has_vim_patch(int n)
// Perform a binary search.
int l = 0;
int h = (int)(ARRAY_SIZE(included_patches)) - 1;
while (l < h) {
while (true) {
const int m = (l + h) / 2;
if (included_patches[m] == n) {
return true;
}
if (l == h) {
break;
}
if (included_patches[m] < n) {
h = m;
} else {

View File

@@ -44,6 +44,9 @@ func Test_has()
" Will we ever have patch 9999?
let ver = 'patch-' .. v:version / 100 .. '.' .. v:version % 100 .. '.9999'
call assert_equal(0, has(ver))
" There actually isn't a patch 9.0.0, but this is more consistent.
call assert_equal(1, has('patch-9.0.0'))
endfunc
func Test_empty()