aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authoroni-link <knil.ino@gmail.com>2015-11-11 16:45:50 +0100
committeroni-link <knil.ino@gmail.com>2015-11-13 15:59:46 +0100
commit1c43452afcada9b7163e33d47c7b6bdaf82abded (patch)
tree4c33e545507c2e1f9b4dfe081c2b7a9c6ca6dfc3 /src
parent1d9ae27e380159c1a2f98448feab48e9be0e56dd (diff)
downloadrneovim-1c43452afcada9b7163e33d47c7b6bdaf82abded.tar.gz
rneovim-1c43452afcada9b7163e33d47c7b6bdaf82abded.tar.bz2
rneovim-1c43452afcada9b7163e33d47c7b6bdaf82abded.zip
memory.c: Prevent garbage collection when running out of memory.
When running out of memory, garbage collection would free lists and dictionaries that are not yet referenced. This would later on lead to a use-after-free for these objects. Releated to vim-patch:7.4.916, so also updating version.c. Patch by @ZyX-I
Diffstat (limited to 'src')
-rw-r--r--src/nvim/memory.c2
-rw-r--r--src/nvim/version.c66
2 files changed, 66 insertions, 2 deletions
diff --git a/src/nvim/memory.c b/src/nvim/memory.c
index d25dc7c941..6d386f3599 100644
--- a/src/nvim/memory.c
+++ b/src/nvim/memory.c
@@ -42,8 +42,6 @@ void try_to_free_memory(void)
clear_sb_text();
// Try to save all buffers and release as many blocks as possible
mf_release_all();
- // cleanup recursive lists/dicts
- garbage_collect();
trying_to_free = false;
}
diff --git a/src/nvim/version.c b/src/nvim/version.c
index 45b36e7d99..f5e43878e4 100644
--- a/src/nvim/version.c
+++ b/src/nvim/version.c
@@ -74,6 +74,72 @@ static char *features[] = {
// clang-format off
static int included_patches[] = {
+ 916,
+ // 915,
+ // 914,
+ // 913,
+ // 912,
+ // 911,
+ // 910,
+ // 909,
+ // 908,
+ // 907,
+ // 906,
+ // 905,
+ // 904,
+ // 903,
+ // 902,
+ // 901,
+ // 900,
+ // 899,
+ // 898,
+ // 897,
+ // 896,
+ // 895,
+ // 894,
+ // 893,
+ // 892,
+ // 891,
+ // 890,
+ // 889,
+ // 888,
+ // 887,
+ // 886,
+ // 885,
+ // 884,
+ // 883,
+ // 882,
+ // 881,
+ // 880,
+ // 879,
+ // 878,
+ // 877,
+ // 876,
+ // 875,
+ // 874,
+ // 873,
+ // 872,
+ // 871,
+ // 870,
+ // 869,
+ // 868,
+ // 867,
+ // 866,
+ // 865,
+ // 864,
+ // 863,
+ // 862,
+ // 861,
+ // 860,
+ // 859,
+ // 858,
+ // 857,
+ // 856,
+ // 855,
+ // 854,
+ // 853,
+ // 852,
+ // 851,
// 850,
849,
// 848,