summaryrefslogtreecommitdiff
blob: a77178a28f0c811099e5456b158226a410552e50 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
diff -Nru gaim-2.0.0beta4-old/gtk/Makefile.am gaim-2.0.0beta4/gtk/Makefile.am
--- gaim-2.0.0beta4-old/gtk/Makefile.am	2006-10-18 12:37:48.000000000 -0500
+++ gaim-2.0.0beta4/gtk/Makefile.am	2006-10-19 12:36:13.000000000 -0500
@@ -161,6 +161,7 @@
 gaim_LDFLAGS = -export-dynamic
 gaim_LDADD = \
 	@LIBOBJS@ \
+	$(GLIB_LIBS) \
 	$(DBUS_LIBS) \
 	$(GSTREAMER_LIBS) \
 	$(STATIC_LINK_LIBS) \
diff -Nru gaim-2.0.0beta4-old/gtk/Makefile.in gaim-2.0.0beta4/gtk/Makefile.in
--- gaim-2.0.0beta4-old/gtk/Makefile.in	2006-10-18 15:00:12.000000000 -0500
+++ gaim-2.0.0beta4/gtk/Makefile.in	2006-10-19 12:37:26.000000000 -0500
@@ -611,6 +611,7 @@
 @ENABLE_GTK_TRUE@gaim_LDFLAGS = -export-dynamic
 @ENABLE_GTK_TRUE@gaim_LDADD = \
 @ENABLE_GTK_TRUE@	@LIBOBJS@ \
+@ENABLE_GTK_TRUE@	$(GLIB_LIBS) \
 @ENABLE_GTK_TRUE@	$(DBUS_LIBS) \
 @ENABLE_GTK_TRUE@	$(GSTREAMER_LIBS) \
 @ENABLE_GTK_TRUE@	$(STATIC_LINK_LIBS) \
diff -Nru gaim-2.0.0beta4-old/gtk/gtkmain.c gaim-2.0.0beta4/gtk/gtkmain.c
--- gaim-2.0.0beta4-old/gtk/gtkmain.c	2006-10-18 12:37:48.000000000 -0500
+++ gaim-2.0.0beta4/gtk/gtkmain.c	2006-10-19 12:42:42.000000000 -0500
@@ -65,6 +65,7 @@
 #include "gtkutils.h"
 #include "gaimstock.h"
 #include "gtkwhiteboard.h"
+#include <glib/gthread.h>
 
 #ifdef HAVE_SIGNAL_H
 # include <signal.h>
@@ -675,6 +676,16 @@
 	gtk_rc_add_default_file(search_path);
 	g_free(search_path);
 
+#if (defined(G_THREADS_ENABLED) && !defined(G_THREADS_IMPL_NONE))
+ /* Since threads can be yanked in all unawares by other libraries,
+  * and some libraries aren't smart enough to initialize the thread
+  * subsystem when they need it, we need to do this here.  We also
+  * threadify dbus when that gets initialized.  Ugh. */
+        if (!g_thread_supported())
+               g_thread_init(NULL);
+	gdk_threads_init();
+#endif /* Glib has threads */
+
 	gui_check = gtk_init_check(&argc, &argv);
 	if (!gui_check) {
 		char *display = gdk_get_display();
diff -Nru gaim-2.0.0beta4-old/libgaim/dbus-server.c gaim-2.0.0beta4/libgaim/dbus-server.c
--- gaim-2.0.0beta4-old/libgaim/dbus-server.c	2006-10-18 12:38:16.000000000 -0500
+++ gaim-2.0.0beta4/libgaim/dbus-server.c	2006-10-19 12:34:57.000000000 -0500
@@ -758,6 +758,8 @@
 void
 gaim_dbus_init(void)
 {
+        if(g_thread_supported())
+                dbus_g_thread_init();
 	gaim_dbus_init_ids();
 
 	g_free(init_error);