patch 8.0.1214: accessing freed memory when EXITFREE is set
Problem: Accessing freed memory when EXITFREE is set and there is more than
one tab and window. (Dominique Pelle)
Solution: Free options later. Skip redraw when exiting.
diff --git a/src/misc2.c b/src/misc2.c
index fac44c7..52ce097 100644
--- a/src/misc2.c
+++ b/src/misc2.c
@@ -1135,7 +1135,6 @@
free_all_autocmds();
# endif
clear_termcodes();
- free_all_options();
free_all_marks();
alist_clear(&global_alist);
free_homedir();
@@ -1196,6 +1195,9 @@
/* Destroy all windows. Must come before freeing buffers. */
win_free_all();
+ /* Free all option values. Must come after closing windows. */
+ free_all_options();
+
/* Free all buffers. Reset 'autochdir' to avoid accessing things that
* were freed already. */
#ifdef FEAT_AUTOCHDIR