summaryrefslogtreecommitdiff
path: root/src/misc2.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/misc2.c')
-rw-r--r--src/misc2.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/misc2.c b/src/misc2.c
index 44b05178b..dece0d968 100644
--- a/src/misc2.c
+++ b/src/misc2.c
@@ -964,8 +964,10 @@ free_all_mem()
#ifdef FEAT_WINDOWS
/* close all tabs and windows */
- do_cmdline_cmd((char_u *)"tabonly!");
- do_cmdline_cmd((char_u *)"only!");
+ if (first_tabpage->tp_next != NULL)
+ do_cmdline_cmd((char_u *)"tabonly!");
+ if (firstwin != lastwin)
+ do_cmdline_cmd((char_u *)"only!");
#endif
# if defined(FEAT_SPELL)
@@ -1077,6 +1079,10 @@ free_all_mem()
reset_last_sourcing();
+#ifdef FEAT_WINDOWS
+ vim_free(first_tabpage);
+#endif
+
# ifdef UNIX
/* Machine-specific free. */
mch_free_mem();