summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-09-29 22:16:09 +0200
committerBram Moolenaar <Bram@vim.org>2020-09-29 22:16:09 +0200
commit32fbc4f247a31e35ade0939542e11aa033a2554f (patch)
treecea3a54d1e1ef26be78ce4ee78b895c81b57eb16
parent1b9129809d8269acb8e7c79d8fc99c7976b4f76e (diff)
downloadvim-git-32fbc4f247a31e35ade0939542e11aa033a2554f.tar.gz
patch 8.2.1774: GTK: hang when forced to exitv8.2.1774
Problem: GTK: hang when forced to exit. Solution: Do not clean up "mainwin" when really_exiting is set. (Zdenek Dohnal, closes #7042)
-rw-r--r--src/gui_gtk_x11.c7
-rw-r--r--src/version.c2
2 files changed, 7 insertions, 2 deletions
diff --git a/src/gui_gtk_x11.c b/src/gui_gtk_x11.c
index fe1ac5878..ecd2d887f 100644
--- a/src/gui_gtk_x11.c
+++ b/src/gui_gtk_x11.c
@@ -4381,11 +4381,14 @@ gui_mch_open(void)
return OK;
}
-
+/*
+ * Clean up for when exiting Vim.
+ */
void
gui_mch_exit(int rc UNUSED)
{
- if (gui.mainwin != NULL)
+ // Clean up, unless we don't want to invoke free().
+ if (gui.mainwin != NULL && !really_exiting)
gtk_widget_destroy(gui.mainwin);
}
diff --git a/src/version.c b/src/version.c
index acac541fe..550296687 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1774,
+/**/
1773,
/**/
1772,