From: Bram Moolenaar Date: Sat, 2 Feb 2019 13:02:30 +0000 (+0100) Subject: patch 8.1.0868: crash if triggering garbage collector after a function call X-Git-Tag: v8.1.0868 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=889da2f2438c8168f9a25dc776360b81109bad44;p=vim 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 index aae3fd334..acbab901f 100644 --- 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 index 92e980559..1a2e2befc 100644 --- a/src/version.c +++ b/src/version.c @@ -783,6 +783,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 868, /**/ 867, /**/