From 3d80062b66b1547657d0b5e022fc74c2ef7e92df Mon Sep 17 00:00:00 2001 From: whitequark Date: Fri, 31 May 2019 23:01:10 +0000 Subject: [PATCH] GTK: delete all gtkmm objects before destrying Gtk::Main. Otherwise this results in harmless but annoying spam on applciation shutdown. See https://gitlab.gnome.org/GNOME/gtkmm/issues/22. --- src/platform/entrygui.cpp | 2 +- src/platform/gui.h | 1 + src/platform/guigtk.cpp | 3 +++ src/platform/guimac.mm | 2 ++ src/platform/guinone.cpp | 2 ++ src/platform/guiwin.cpp | 2 ++ 6 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/platform/entrygui.cpp b/src/platform/entrygui.cpp index 56f199e..654d25e 100644 --- a/src/platform/entrygui.cpp +++ b/src/platform/entrygui.cpp @@ -29,8 +29,8 @@ int main(int argc, char** argv) { Platform::Close3DConnexion(); SS.Clear(); - SK.Clear(); + Platform::ClearGui(); return 0; } diff --git a/src/platform/gui.h b/src/platform/gui.h index cef74f6..059df44 100644 --- a/src/platform/gui.h +++ b/src/platform/gui.h @@ -380,6 +380,7 @@ void OpenInBrowser(const std::string &url); void InitGui(int argc, char **argv); void RunGui(); void ExitGui(); +void ClearGui(); } diff --git a/src/platform/guigtk.cpp b/src/platform/guigtk.cpp index fbcc701..d9a3b9f 100644 --- a/src/platform/guigtk.cpp +++ b/src/platform/guigtk.cpp @@ -1475,6 +1475,9 @@ void RunGui() { void ExitGui() { gtkMain->quit(); +} + +void ClearGui() { delete gtkMain; } diff --git a/src/platform/guimac.mm b/src/platform/guimac.mm index 6ed9d4c..77f2d56 100644 --- a/src/platform/guimac.mm +++ b/src/platform/guimac.mm @@ -1479,5 +1479,7 @@ void ExitGui() { [NSApp terminate:nil]; } +void ClearGui() {} + } } diff --git a/src/platform/guinone.cpp b/src/platform/guinone.cpp index eada384..fe05451 100644 --- a/src/platform/guinone.cpp +++ b/src/platform/guinone.cpp @@ -154,6 +154,8 @@ void ExitGui() { exit(0); } +void ClearGui() {} + } } diff --git a/src/platform/guiwin.cpp b/src/platform/guiwin.cpp index 67e8490..40f20c5 100644 --- a/src/platform/guiwin.cpp +++ b/src/platform/guiwin.cpp @@ -1677,5 +1677,7 @@ void ExitGui() { PostQuitMessage(0); } +void ClearGui() {} + } }