# HG changeset patch # User Bram Moolenaar # Date 1549113312 -3600 # Node ID e84eb23f46704e1887b1044071ddbc9e4dba435a # Parent 600c2a9024a2bf0198f60c24bd7662be136e8aed patch 8.1.0868: crash if triggering garbage collector after a function call commit https://github.com/vim/vim/commit/889da2f2438c8168f9a25dc776360b81109bad44 Author: Bram Moolenaar Date: Sat Feb 2 14:02:30 2019 +0100 patch 8.1.0868: crash if triggering garbage collector after a function call Problem: Crash if triggering garbage collector after a function call. (Michael Henry) Solution: Don't call the garbage collector right away, do it later. (closes #3894) diff --git a/src/userfunc.c b/src/userfunc.c --- a/src/userfunc.c +++ b/src/userfunc.c @@ -679,10 +679,10 @@ cleanup_function_call(funccall_T *fc) { // We have made a lot of copies. This can happen when // repetitively calling a function that creates a reference to - // itself somehow. Call the garbage collector here to avoid using + // itself somehow. Call the garbage collector soon to avoid using // too much memory. made_copy = 0; - (void)garbage_collect(FALSE); + want_garbage_collect = TRUE; } } } diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -784,6 +784,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 868, +/**/ 867, /**/ 866,