Mercurial > vim
changeset 31837:e16361210675 v9.0.1251
patch 9.0.1251: checking returned value of ga_grow() is inconsistent
Commit: https://github.com/vim/vim/commit/fadc02a2a57755fa1342b1b44c2ceab3046125fc
Author: Yegappan Lakshmanan <yegappan@yahoo.com>
Date: Fri Jan 27 21:03:12 2023 +0000
patch 9.0.1251: checking returned value of ga_grow() is inconsistent
Problem: Checking returned value of ga_grow() is inconsistent.
Solution: Check for FAIL instaed of "not OK". (Yegappan Lakshmanan,
closes #11897)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 27 Jan 2023 22:15:03 +0100 |
parents | f800c5e0c695 |
children | 35d3dca6748b |
files | src/digraph.c src/evalfunc.c src/fold.c src/getchar.c src/map.c src/os_win32.c src/scriptfile.c src/spellfile.c src/syntax.c src/tag.c src/usercmd.c src/version.c |
diffstat | 12 files changed, 16 insertions(+), 14 deletions(-) [+] |
line wrap: on
line diff
--- a/src/digraph.c +++ b/src/digraph.c @@ -1682,7 +1682,7 @@ registerdigraph(int char1, int char2, in } // Add a new digraph to the table. - if (ga_grow(&user_digraphs, 1) != OK) + if (ga_grow(&user_digraphs, 1) == FAIL) return; dp = (digr_T *)user_digraphs.ga_data + user_digraphs.ga_len;
--- a/src/evalfunc.c +++ b/src/evalfunc.c @@ -3966,7 +3966,7 @@ execute_redir_str(char_u *value, int val len = (int)STRLEN(value); // Append the entire string else len = value_len; // Append only "value_len" characters - if (ga_grow(&redir_execute_ga, len) != OK) + if (ga_grow(&redir_execute_ga, len) == FAIL) return; mch_memmove((char *)redir_execute_ga.ga_data
--- a/src/fold.c +++ b/src/fold.c @@ -645,7 +645,7 @@ foldCreate(linenr_T start, linenr_T end) i = (int)(fp - (fold_T *)gap->ga_data); } - if (ga_grow(gap, 1) != OK) + if (ga_grow(gap, 1) == FAIL) return; fp = (fold_T *)gap->ga_data + i; @@ -2884,7 +2884,7 @@ foldInsert(garray_T *gap, int i) { fold_T *fp; - if (ga_grow(gap, 1) != OK) + if (ga_grow(gap, 1) == FAIL) return FAIL; fp = (fold_T *)gap->ga_data + i; if (gap->ga_len > 0 && i < gap->ga_len)
--- a/src/getchar.c +++ b/src/getchar.c @@ -3890,7 +3890,7 @@ getcmdkeycmd( got_int = FALSE; while (c1 != NUL && !aborted) { - if (ga_grow(&line_ga, 32) != OK) + if (ga_grow(&line_ga, 32) == FAIL) { aborted = TRUE; break;
--- a/src/map.c +++ b/src/map.c @@ -2983,7 +2983,7 @@ langmap_set_entry(int from, int to) b = i; } - if (ga_grow(&langmap_mapga, 1) != OK) + if (ga_grow(&langmap_mapga, 1) == FAIL) return; // out of memory // insert new entry at position "a"
--- a/src/os_win32.c +++ b/src/os_win32.c @@ -5725,7 +5725,7 @@ win32_build_env(dict_T *env, garray_T *g size_t lkey = wcslen(wkey); size_t lval = wcslen(wval); - if (ga_grow(gap, (int)(lkey + lval + 2)) != OK) + if (ga_grow(gap, (int)(lkey + lval + 2)) == FAIL) continue; for (n = 0; n < lkey; n++) *((WCHAR*)gap->ga_data + gap->ga_len++) = wkey[n];
--- a/src/scriptfile.c +++ b/src/scriptfile.c @@ -56,7 +56,7 @@ estack_push(etype_T type, char_u *name, // If memory allocation fails then we'll pop more than we push, eventually // at the top level it will be OK again. - if (ga_grow(&exestack, 1) != OK) + if (ga_grow(&exestack, 1) == FAIL) return NULL; entry = ((estack_T *)exestack.ga_data) + exestack.ga_len;
--- a/src/spellfile.c +++ b/src/spellfile.c @@ -3428,7 +3428,7 @@ add_fromto( fromto_T *ftp; char_u word[MAXWLEN]; - if (ga_grow(gap, 1) != OK) + if (ga_grow(gap, 1) == FAIL) return; ftp = ((fromto_T *)gap->ga_data) + gap->ga_len;
--- a/src/syntax.c +++ b/src/syntax.c @@ -1438,7 +1438,7 @@ load_current_state(synstate_T *from) validate_current_state(); keepend_level = -1; if (from->sst_stacksize - && ga_grow(¤t_state, from->sst_stacksize) != FAIL) + && ga_grow(¤t_state, from->sst_stacksize) == OK) { if (from->sst_stacksize > SST_FIX_STATES) bp = SYN_STATE_P(&(from->sst_union.sst_ga)); @@ -4946,7 +4946,7 @@ syn_cmd_match( set_nextcmd(eap, rest); if (!ends_excmd2(eap->cmd, rest) || eap->skip) rest = NULL; - else if (ga_grow(&curwin->w_s->b_syn_patterns, 1) != FAIL + else if (ga_grow(&curwin->w_s->b_syn_patterns, 1) == OK && (syn_id = syn_check_group(arg, (int)(group_name_end - arg))) != 0) { @@ -5186,7 +5186,7 @@ syn_cmd_region( set_nextcmd(eap, rest); if (!ends_excmd(*rest) || eap->skip) rest = NULL; - else if (ga_grow(&(curwin->w_s->b_syn_patterns), pat_count) != FAIL + else if (ga_grow(&(curwin->w_s->b_syn_patterns), pat_count) == OK && (syn_id = syn_check_group(arg, (int)(group_name_end - arg))) != 0) {
--- a/src/tag.c +++ b/src/tag.c @@ -2739,7 +2739,7 @@ findtags_add_match( if (HASHITEM_EMPTY(hi)) { if (hash_add_item(&st->ht_match[mtt], hi, mfp, *hash) == FAIL - || ga_grow(&st->ga_match[mtt], 1) != OK) + || ga_grow(&st->ga_match[mtt], 1) == FAIL) { // Out of memory! Just forget about the rest. st->stop_searching = TRUE;