summaryrefslogtreecommitdiff
path: root/src/os_unix.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2005-06-25 23:04:51 +0000
committerBram Moolenaar <Bram@vim.org>2005-06-25 23:04:51 +0000
commitf461c8e7f8ce2fd2ac3367680ec4c540f04ab259 (patch)
treebfacc7b1f4c7b6087026c9e8c39bb1f7b305d22f /src/os_unix.c
parentea408854a8360b6925122ce7709b424ab3005209 (diff)
downloadvim-git-f461c8e7f8ce2fd2ac3367680ec4c540f04ab259.tar.gz
updated for version 7.0093v7.0093
Diffstat (limited to 'src/os_unix.c')
-rw-r--r--src/os_unix.c19
1 files changed, 17 insertions, 2 deletions
diff --git a/src/os_unix.c b/src/os_unix.c
index d27b05a6d..07645dc49 100644
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -2703,8 +2703,11 @@ mch_early_init()
void
mch_free_mem()
{
-# if defined(HAVE_SIGALTSTACK) || defined(HAVE_SIGSTACK)
- vim_free(signal_stack);
+# if defined(FEAT_CLIPBOARD) && defined(FEAT_X11)
+ if (clip_star.owned)
+ clip_lose_selection(&clip_star);
+ if (clip_plus.owned)
+ clip_lose_selection(&clip_plus);
# endif
# if (defined(FEAT_X11) && defined(FEAT_XCLIPBOARD)) || defined(PROTO)
if (xterm_Shell != (Widget)0)
@@ -2714,6 +2717,18 @@ mch_free_mem()
if (app_context != (XtAppContext)NULL)
XtDestroyApplicationContext(app_context);
# endif
+# ifdef FEAT_X11
+ if (x11_display != NULL && x11_display != xterm_dpy)
+ XCloseDisplay(x11_display);
+# endif
+# if defined(HAVE_SIGALTSTACK) || defined(HAVE_SIGSTACK)
+ vim_free(signal_stack);
+ signal_stack = NULL;
+# endif
+# ifdef FEAT_TITLE
+ vim_free(oldtitle);
+ vim_free(oldicon);
+# endif
}
#endif