changeset 6458:48111d5fd8a8 v7.4.558

updated for version 7.4.558 Problem: When the X server restarts Vim may get stuck. Solution: Destroy the application context and create it again. (Issue 203)
author Bram Moolenaar <bram@vim.org>
date Wed, 17 Dec 2014 17:59:31 +0100
parents 990569f7eb71
children 342bbee39831
files src/os_unix.c src/version.c
diffstat 2 files changed, 13 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -1617,6 +1617,17 @@ may_restore_clipboard()
     if (xterm_dpy_was_reset)
     {
 	xterm_dpy_was_reset = FALSE;
+
+# ifndef LESSTIF_VERSION
+	/* This has been reported to avoid Vim getting stuck. */
+	if (app_context != (XtAppContext)NULL)
+	{
+	    XtDestroyApplicationContext(app_context);
+	    app_context = (XtAppContext)NULL;
+	    x11_display = NULL; /* freed by XtDestroyApplicationContext() */
+	}
+# endif
+
 	setup_term_clip();
 	get_x11_title(FALSE);
     }
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    558,
+/**/
     557,
 /**/
     556,