# HG changeset patch # User Bram Moolenaar # Date 1638704703 -3600 # Node ID 9a1b96ae26d1e2fa850188a13e5777a0909b452a # Parent 49cd1ff825c4c618ff81a5646b4c9f20893fd46f patch 8.2.3740: memory left allocated on exit when using Tcl Commit: https://github.com/vim/vim/commit/c7269f862748c3b0f56b5a651019e18c7d5190ee Author: Bram Moolenaar Date: Sun Dec 5 11:36:23 2021 +0000 patch 8.2.3740: memory left allocated on exit when using Tcl Problem: Memory left allocated on exit when using Tcl. Solution: Call Tcl_Finalize(). diff --git a/src/alloc.c b/src/alloc.c --- a/src/alloc.c +++ b/src/alloc.c @@ -574,6 +574,9 @@ free_all_mem(void) # ifdef FEAT_GUI_GTK gui_mch_free_all(); # endif +# ifdef FEAT_TCL + vim_tcl_finalize(); +# endif clear_hl_tables(); vim_free(IObuff); diff --git a/src/if_tcl.c b/src/if_tcl.c --- a/src/if_tcl.c +++ b/src/if_tcl.c @@ -248,6 +248,14 @@ vim_tcl_init(char *arg) #endif } +#if defined(EXITFREE) || defined(PROTO) + void +vim_tcl_finalize(void) +{ + Tcl_Finalize(); +} +#endif + #if defined(DYNAMIC_TCL) || defined(PROTO) static int stubs_initialized = FALSE; diff --git a/src/proto/if_tcl.pro b/src/proto/if_tcl.pro --- a/src/proto/if_tcl.pro +++ b/src/proto/if_tcl.pro @@ -1,5 +1,6 @@ /* if_tcl.c */ void vim_tcl_init(char *arg); +void vim_tcl_finalize(void); int tcl_enabled(int verbose); void tcl_end(void); void ex_tcl(exarg_T *eap); diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -754,6 +754,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 3740, +/**/ 3739, /**/ 3738,