mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
vim-patch:8.0.1410: hang when using count() with an empty string
Problem: Hang when using count() with an empty string.
Solution: Return zero for an empty string. (Dominique Pelle, closes vim/vim#2465)
338e47fdfd
This commit is contained in:
parent
fe6cf2812b
commit
a445887985
@ -2998,8 +2998,8 @@ count({comp}, {expr} [, {ic} [, {start}]]) *count()*
|
||||
When {ic} is given and it's |TRUE| then case is ignored.
|
||||
|
||||
When {comp} is a string then the number of not overlapping
|
||||
occurences of {expr} is returned.
|
||||
|
||||
occurrences of {expr} is returned. Zero is returned when
|
||||
{expr} is an empty string.
|
||||
|
||||
*cscope_connection()*
|
||||
cscope_connection([{num} , {dbpath} [, {prepend}]])
|
||||
|
@ -7603,7 +7603,7 @@ static void f_count(typval_T *argvars, typval_T *rettv, FunPtr fptr)
|
||||
const char_u *expr = (char_u *)tv_get_string_chk(&argvars[1]);
|
||||
const char_u *p = argvars[0].vval.v_string;
|
||||
|
||||
if (!error && expr != NULL && p != NULL) {
|
||||
if (!error && expr != NULL && *expr != NUL && p != NULL) {
|
||||
if (ic) {
|
||||
const size_t len = STRLEN(expr);
|
||||
|
||||
|
@ -723,6 +723,7 @@ func Test_count()
|
||||
call assert_equal(0, count("foo", "O"))
|
||||
call assert_equal(2, count("foo", "O", 1))
|
||||
call assert_equal(2, count("fooooo", "oo"))
|
||||
call assert_equal(0, count("foo", ""))
|
||||
endfunc
|
||||
|
||||
func Test_changenr()
|
||||
|
Loading…
Reference in New Issue
Block a user