From 918b92b961ac319ddb5f24d8cade2cf6aeebc5d5 Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Wed, 20 Mar 2024 19:49:20 +0100 Subject: patch 9.1.0189: Memory leak with "above" virttext and 'relativenumber' Problem: Memory leak with "above" virtual text and 'relativenumber'. Solution: Free "text_props" and "text_prop_idxs" before returning. Also fix off-by-one error causing line number to be drawn beyond end of window (zeertzjq). fixes: #14239 closes: #14241 Signed-off-by: zeertzjq Signed-off-by: Christian Brabandt --- src/drawline.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/drawline.c') diff --git a/src/drawline.c b/src/drawline.c index ed02f3cab6..a8de449af4 100644 --- a/src/drawline.c +++ b/src/drawline.c @@ -1683,8 +1683,12 @@ win_line( { // skip over rows only used for virtual text above wlv.row += wlv.text_prop_above_count; - if (wlv.row > endrow) + if (wlv.row >= endrow) + { + vim_free(text_props); + vim_free(text_prop_idxs); return wlv.row; + } wlv.screen_row += wlv.text_prop_above_count; } #endif -- cgit v1.2.3