patch 7.4.1598
Problem: When starting the GUI fails a swap file is left behind. (Joerg
Plate)
Solution: Preserve files before exiting. (closes #692)
diff --git a/src/gui.c b/src/gui.c
index f52d217..d5c0d3e 100644
--- a/src/gui.c
+++ b/src/gui.c
@@ -105,7 +105,7 @@
/* If there is 'f' in 'guioptions' and specify -g argument,
* gui_mch_init_check() was not called yet. */
if (gui_mch_init_check() != OK)
- exit(1);
+ getout_preserve_modified(1);
#endif
gui_attempt_start();
}
@@ -272,7 +272,7 @@
#ifdef FEAT_GUI_GTK
/* Call gtk_init_check() here after fork(). See gui_init_check(). */
if (gui_mch_init_check() != OK)
- exit(1);
+ getout_preserve_modified(1);
#endif
# if defined(HAVE_SETSID) || defined(HAVE_SETPGID)
@@ -309,7 +309,7 @@
/* If we failed to start the GUI, exit now. */
if (!gui.in_use)
- exit(1);
+ getout_preserve_modified(1);
}
/*
diff --git a/src/main.c b/src/main.c
index 8c7d3d6..83e55d1 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1355,7 +1355,7 @@
}
-#if defined(USE_XSMP) || defined(FEAT_GUI_MSWIN) || defined(PROTO)
+#if defined(USE_XSMP) || defined(FEAT_GUI) || defined(PROTO)
/*
* Exit, but leave behind swap files for modified buffers.
*/
@@ -1377,7 +1377,9 @@
#endif
-/* Exit properly */
+/*
+ * Exit properly.
+ */
void
getout(int exitval)
{
diff --git a/src/version.c b/src/version.c
index 4d0c250..7379875 100644
--- a/src/version.c
+++ b/src/version.c
@@ -749,6 +749,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1598,
+/**/
1597,
/**/
1596,