diff options
author | Bram Moolenaar <Bram@vim.org> | 2021-02-03 19:44:25 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2021-02-03 19:44:25 +0100 |
commit | 0dcd39bad5e5aa70ba8f60cb3fbf0658585f0151 (patch) | |
tree | 6568dea40f472577b749c74fabbcf4d3e8b86c02 /src/indent.c | |
parent | 4dba04256b8a49b201d685217d3d7abc4988f090 (diff) |
patch 8.2.2458: Coverity warns for :retab using freed memoryv8.2.2458
Problem: Coverity warns for :retab using freed memory.
Solution: Use the updated line pointer when moving text properties.
Diffstat (limited to 'src/indent.c')
-rw-r--r-- | src/indent.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/indent.c b/src/indent.c index a9d406e3a0..6ac6182df4 100644 --- a/src/indent.c +++ b/src/indent.c @@ -1662,7 +1662,9 @@ ex_retab(exarg_T *eap) ptr = new_line + start_col; for (col = 0; col < len; col++) ptr[col] = (col < num_tabs) ? '\t' : ' '; - ml_replace(lnum, new_line, FALSE); + if (ml_replace(lnum, new_line, FALSE) == OK) + // "new_line" may have been copied + new_line = curbuf->b_ml.ml_line_ptr; if (first_line == 0) first_line = lnum; last_line = lnum; |