Problem: matchfuzzy() leaks allocated lists (after 9.1.1627).
Solution: Restore the "retmatchpos" condition.
The memory leak cannot be caught by ASAN as the garbage collector still
tracks these lists, but it can be reproduced by the following script,
which increases Vim's memory usage to over 1 GiB without this fix:
for i in range(100000) call matchfuzzy([repeat('a', 300)], repeat('a', 257)) endfor
https://github.com/vim/vim/pull/17980
(1 file)
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.![]()
cc @girishji
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.![]()
Thanks for fixing this. I believe it was leaking the lmatchpos list.
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.![]()
@zeertzjq pushed 1 commit.
—
View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
Closing in favor of #17984
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.
Closed #17980.
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.