pidgin/libpidgin.c

changeset 41806
b7a1aab4b3be
parent 41723
124c95083fad
child 41867
5375c1d58c50
--- a/pidgin/libpidgin.c	Mon Oct 10 02:08:22 2022 -0500
+++ b/pidgin/libpidgin.c	Mon Oct 10 02:30:03 2022 -0500
@@ -30,6 +30,9 @@
 #include <glib/gi18n-lib.h>
 #include <glib/gstdio.h>
 
+#define G_SETTINGS_ENABLE_BACKEND
+#include <gio/gsettingsbackend.h>
+
 #include <locale.h>
 
 #include <purple.h>
@@ -300,10 +303,24 @@
 	g_application_quit(g_application_get_default());
 }
 
+static gpointer
+pidgin_get_settings_backend(void) {
+	GSettingsBackend *backend = NULL;
+	char *config = NULL;
+
+	config = g_build_filename(purple_config_dir(), "pidgin3.ini", NULL);
+	backend = g_keyfile_settings_backend_new(config, "/", NULL);
+
+	g_free(config);
+
+	return backend;
+}
+
 static PurpleCoreUiOps core_ops = {
 	.ui_prefs_init = pidgin_prefs_init,
 	.ui_init = pidgin_ui_init,
 	.quit = pidgin_quit,
+	.get_settings_backend = pidgin_get_settings_backend,
 };
 
 PurpleCoreUiOps *

mercurial