]> git.0d.be Git - empathy.git/commitdiff
gtk_init and g_thread_init shouldn't be called by libraries. Let applications do it.
authorXavier Claessens <xclaesse@src.gnome.org>
Fri, 12 Dec 2008 15:49:38 +0000 (15:49 +0000)
committerXavier Claessens <xclaesse@src.gnome.org>
Fri, 12 Dec 2008 15:49:38 +0000 (15:49 +0000)
svn path=/trunk/; revision=1971

libempathy-gtk/empathy-ui-utils.c
libempathy-gtk/empathy-ui-utils.h
libempathy/empathy-utils.c
src/empathy-logs.c
src/empathy.c
tests/contact-manager.c

index 91bbfe58bce1b58d0b4084b1dcb5e08afbae629e..b317671d219287e3c0dcfd5738724f779815c0f8 100644 (file)
 #include <libempathy/empathy-utils.h>
 #include <libempathy/empathy-dispatcher.h>
 
-static gboolean
-init (gboolean abort_if_fail,
-      int *argc,
-      char ***argv,
-      char *parameter_string,
-      GOptionEntry *entries,
-      char *translation_domain,
-      GError **error)
+void
+empathy_gtk_init (void)
 {
        static gboolean initialized = FALSE;
-       gboolean ret = TRUE;
 
        if (initialized)
-               return TRUE;
+               return;
 
        empathy_init ();
-       if (abort_if_fail) {
-               gtk_init (argc, argv);
-       } else {
-               ret = gtk_init_with_args (argc, argv, parameter_string, entries,
-                                         translation_domain, error);
-       }
        gtk_icon_theme_append_search_path (gtk_icon_theme_get_default (),
                                           PKGDATADIR G_DIR_SEPARATOR_S "icons");
 
        initialized = TRUE;
-
-       return ret;
-}
-
-void
-empathy_gtk_init (int *argc, char ***argv)
-{
-       init (FALSE, argc, argv, NULL, NULL, NULL, NULL);
-}
-
-gboolean
-empathy_gtk_init_with_args (int *argc,
-                           char ***argv,
-                           char *parameter_string,
-                           GOptionEntry *entries,
-                           char *translation_domain,
-                           GError **error)
-{
-       return init (TRUE, argc, argv, parameter_string, entries,
-                    translation_domain, error);
 }
 
 struct SizeData {
index 777ce8ee015502d38dd329ecced001bbb7949d29..1ec4f5da614a1697c7ebca16beaf160ea93db89f 100644 (file)
@@ -46,14 +46,7 @@ G_BEGIN_DECLS
 
 #define G_STR_EMPTY(x) ((x) == NULL || (x)[0] == '\0')
 
-void            empathy_gtk_init                        (int *argc,
-                                                         char ***argv);
-gboolean        empathy_gtk_init_with_args              (int *argc,
-                                                         char ***argv,
-                                                         char *parameter_string,
-                                                         GOptionEntry *entries,
-                                                         char *translation_domain,
-                                                         GError **error);
+void            empathy_gtk_init                        (void);
 /* Glade */
 void            empathy_glade_get_file_simple           (const gchar      *filename,
                                                         const gchar      *root,
index 2e02fc6c438bb0842600d48a563cd60b5d813afc..c025f26daa0e9e5c1ec07443526246e8b57b90f7 100644 (file)
@@ -51,10 +51,6 @@ empathy_init (void)
        if (initialized)
                return;
 
-       /* Setup glib. Threads are required for async GIO. */
-       if (!g_thread_supported ()) {
-               g_thread_init (NULL);
-       }
        g_type_init ();
 
        /* Setup gettext */
index f805f909448d39f904712392cc3a5a1c02f9c799..502be67d7076615f59e95bc10ce17e9d5719869a 100644 (file)
@@ -41,7 +41,9 @@ main (int argc, char *argv[])
 {
        GtkWidget *window;
 
-       empathy_gtk_init (&argc, &argv);
+       g_thread_init (NULL);
+       gtk_init (&argc, &argv);
+       empathy_gtk_init ();
        g_set_application_name (PACKAGE_NAME);
        gtk_window_set_default_icon_name ("empathy");
 
index 1e506ba6e6a09f4f793a0ab42e1d6ca66ad1e87a..815b2b487afe2562b69e10ab39765646148a32dd 100644 (file)
@@ -401,19 +401,21 @@ main (int argc, char *argv[])
                { NULL }
        };
 
-       startup_timestamp = get_startup_timestamp ();
-
-       if (!empathy_gtk_init_with_args (&argc, &argv,
-                                        _("- Empathy Instant Messenger"),
-                                        options, GETTEXT_PACKAGE, &error)) {
+       /* Init */
+       g_thread_init (NULL);
+       if (!gtk_init_with_args (&argc, &argv,
+                                _("- Empathy Instant Messenger"),
+                                options, GETTEXT_PACKAGE, &error)) {
                g_warning ("Error in empathy init: %s", error->message);
                return EXIT_FAILURE;
        }
+       empathy_gtk_init ();
        g_set_application_name (PACKAGE_NAME);
        gtk_window_set_default_icon_name ("empathy");
        textdomain (GETTEXT_PACKAGE);
 
         /* Setting up the bacon connection */
+       startup_timestamp = get_startup_timestamp ();
        connection = bacon_message_connection_new ("empathy");
        if (connection != NULL) {
                if (!bacon_message_connection_get_is_server (connection)) {
index ac3b6bdc8cbf226c797b34de53afb5c2f02e46a7..81c1a9ba4770c27659e08a66e092994a1b1d7115 100644 (file)
@@ -18,7 +18,8 @@ main (int argc, char **argv)
        GtkWidget *window;
        GtkCellRenderer *renderer;
 
-       empathy_gtk_init (&argc, &argv);
+       gtk_init (&argc, &argv);
+       empathy_gtk_init ();
 
        empathy_debug_set_flags (g_getenv ("EMPATHY_DEBUG"));
        main_loop = g_main_loop_new (NULL, FALSE);