diff options
author | Bram Moolenaar <Bram@vim.org> | 2022-08-01 12:06:40 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2022-08-01 12:06:40 +0100 |
commit | 3f79b61288bf528b9a848af9e4c849c35c1df0bf (patch) | |
tree | 124f6918bb9962119e04c4e5ad3e20efa9be4507 /src/charset.c | |
parent | e95f22f63a1871b91e5508088e5ae4905ce28cd7 (diff) |
patch 9.0.0128: Coverity complains about possible double freev9.0.0128
Problem: Coverity complains about possible double free.
Solution: Clear the pointer to avoid warnings.
Diffstat (limited to 'src/charset.c')
-rw-r--r-- | src/charset.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/charset.c b/src/charset.c index a8173c1246..2b657476df 100644 --- a/src/charset.c +++ b/src/charset.c @@ -912,16 +912,13 @@ init_chartabsize_arg( char_u *line, char_u *ptr) { + CLEAR_POINTER(cts); cts->cts_win = wp; cts->cts_lnum = lnum; cts->cts_vcol = col; cts->cts_line = line; cts->cts_ptr = ptr; #ifdef FEAT_PROP_POPUP - cts->cts_text_prop_count = 0; - cts->cts_has_prop_with_text = FALSE; - cts->cts_cur_text_width = 0; - cts->cts_with_trailing = 0; if (lnum > 0) { char_u *prop_start; @@ -951,7 +948,7 @@ init_chartabsize_arg( if (!cts->cts_has_prop_with_text) { // won't use the text properties, free them - vim_free(cts->cts_text_props); + VIM_CLEAR(cts->cts_text_props); cts->cts_text_prop_count = 0; } } @@ -969,8 +966,8 @@ clear_chartabsize_arg(chartabsize_T *cts UNUSED) #ifdef FEAT_PROP_POPUP if (cts->cts_text_prop_count > 0) { - vim_free(cts->cts_text_props); - cts->cts_text_prop_count = 0; // avoid double free + VIM_CLEAR(cts->cts_text_props); + cts->cts_text_prop_count = 0; } #endif } |