Mercurial > vim
comparison src/terminal.c @ 18225:6c3a8312486d v8.1.2107
patch 8.1.2107: various memory leaks reported by asan
Commit: https://github.com/vim/vim/commit/8617348e2110c2c8387ea448a6258f1effa8d249
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Oct 1 17:02:16 2019 +0200
patch 8.1.2107: various memory leaks reported by asan
Problem: Various memory leaks reported by asan.
Solution: Free the memory. (Ozaki Kiichi, closes https://github.com/vim/vim/issues/5003)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 01 Oct 2019 17:15:04 +0200 |
parents | 4ac8161e92e0 |
children | c8a53c0daeed |
comparison
equal
deleted
inserted
replaced
18224:96632a3c3d90 | 18225:6c3a8312486d |
---|---|
4600 ml_append(curbuf->b_ml.ml_line_count, ga_text.ga_data, | 4600 ml_append(curbuf->b_ml.ml_line_count, ga_text.ga_data, |
4601 ga_text.ga_len, FALSE); | 4601 ga_text.ga_len, FALSE); |
4602 } | 4602 } |
4603 | 4603 |
4604 ga_clear(&ga_text); | 4604 ga_clear(&ga_text); |
4605 ga_clear(&ga_cell); | |
4605 vim_free(prev_char); | 4606 vim_free(prev_char); |
4606 | 4607 |
4607 return max_cells; | 4608 return max_cells; |
4608 } | 4609 } |
4609 | 4610 |
4731 else | 4732 else |
4732 { | 4733 { |
4733 buf = curbuf; | 4734 buf = curbuf; |
4734 while (!(curbuf->b_ml.ml_flags & ML_EMPTY)) | 4735 while (!(curbuf->b_ml.ml_flags & ML_EMPTY)) |
4735 ml_delete((linenr_T)1, FALSE); | 4736 ml_delete((linenr_T)1, FALSE); |
4736 ga_clear(&curbuf->b_term->tl_scrollback); | 4737 free_scrollback(curbuf->b_term); |
4737 redraw_later(NOT_VALID); | 4738 redraw_later(NOT_VALID); |
4738 } | 4739 } |
4739 } | 4740 } |
4740 else | 4741 else |
4741 // Create a new terminal window. | 4742 // Create a new terminal window. |