From 6a78c3b7504b280daffe662eafebd18567796fdc Mon Sep 17 00:00:00 2001 From: Perry Werneck Date: Thu, 19 Nov 2020 18:16:17 -0300 Subject: [PATCH] Fixing segfault on multiple use of settings dialog. --- src/include/pw3270/application.h | 3 +++ src/objects/application/application.c | 2 +- src/objects/window/actions/sessionproperties.c | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/include/pw3270/application.h b/src/include/pw3270/application.h index 1c7e0d6..48279d2 100644 --- a/src/include/pw3270/application.h +++ b/src/include/pw3270/application.h @@ -65,6 +65,9 @@ GType pw3270Application_get_type(); GtkApplication * pw3270_application_new(const gchar *application_id, GApplicationFlags flags); + /// @brief Get application settings. + /// @param app The pw3270 application object. + /// @return The internal settings object (Do not unref it). GSettings * pw3270_application_get_settings(GApplication *app); GList * pw3270_application_get_keypad_models(GApplication *app); diff --git a/src/objects/application/application.c b/src/objects/application/application.c index 8d1c431..9c38b93 100644 --- a/src/objects/application/application.c +++ b/src/objects/application/application.c @@ -352,7 +352,7 @@ G_APPLICATION_CLASS(pw3270Application_parent_class)->startup(application); - g_autoptr(GSettings) settings = pw3270_application_get_settings(application); + GSettings *settings = pw3270_application_get_settings(application); // // Common actions diff --git a/src/objects/window/actions/sessionproperties.c b/src/objects/window/actions/sessionproperties.c index b490c5f..c8a82f7 100644 --- a/src/objects/window/actions/sessionproperties.c +++ b/src/objects/window/actions/sessionproperties.c @@ -53,7 +53,7 @@ size_t ix; - g_autoptr(GSettings) settings = pw3270_application_get_settings(g_application_get_default()); + GSettings *settings = pw3270_application_get_settings(g_application_get_default()); GtkWidget * dialog = v3270_settings_dialog_new(); gtk_window_set_title(GTK_WINDOW(dialog), action->label); -- libgit2 0.21.2