diff options
author | Michael 'Mickey' Lauer <mickey@vanille-media.de> | 2009-08-07 22:07:39 +0000 |
---|---|---|
committer | Michael 'Mickey' Lauer <mickey@vanille-media.de> | 2009-08-07 22:09:15 +0000 |
commit | 2895b2dd1ef233b3844744f9844b1f691b039510 (patch) | |
tree | a7e6c6f41c716771e3a8f4d2d35d505bfa9cb980 /recipes/dbus/dbus-glib-0.82 | |
parent | bfaa176eefb3239f9c043e29907e55b54ee227b0 (diff) |
dbus-glib: add 0.82
Diffstat (limited to 'recipes/dbus/dbus-glib-0.82')
-rw-r--r-- | recipes/dbus/dbus-glib-0.82/fix-async-dbus.patch | 115 | ||||
-rw-r--r-- | recipes/dbus/dbus-glib-0.82/no-examples.patch | 8 | ||||
-rw-r--r-- | recipes/dbus/dbus-glib-0.82/no-introspect.patch | 14 |
3 files changed, 137 insertions, 0 deletions
diff --git a/recipes/dbus/dbus-glib-0.82/fix-async-dbus.patch b/recipes/dbus/dbus-glib-0.82/fix-async-dbus.patch new file mode 100644 index 0000000000..0cea12431f --- /dev/null +++ b/recipes/dbus/dbus-glib-0.82/fix-async-dbus.patch @@ -0,0 +1,115 @@ +diff -ur dbus-glib-0.78/dbus/dbus-gproxy.c patched/dbus-glib-0.78/dbus/dbus-gproxy.c +--- dbus-glib-0.78/dbus/dbus-gproxy.c 2008-11-17 19:45:50.000000000 +0100 ++++ patched/dbus-glib-0.78/dbus/dbus-gproxy.c 2009-01-30 18:12:51.000000000 +0100 +@@ -2175,6 +2175,41 @@ + return NULL; + } + ++struct dbus_g_proxy_begin_call_internal_helper_args ++{ ++ DBusGProxy *proxy; ++ DBusGProxyCallNotify notify; ++ guint call_id; ++ gpointer user_data; ++ GDestroyNotify destroy; ++}; ++ ++static void ++dbus_g_proxy_begin_call_internal_helper (DBusPendingCall *pending, void *user_data) ++{ ++ struct dbus_g_proxy_begin_call_internal_helper_args *t1 = user_data; ++ DBusGProxyPrivate *priv = DBUS_G_PROXY_GET_PRIVATE(t1->proxy); ++ GPendingNotifyClosure *closure; ++ ++ ++ t1->call_id = ++priv->call_id_counter; ++ ++ if (t1->notify != NULL) ++ { ++ closure = g_new (GPendingNotifyClosure, 1); ++ closure->proxy = t1->proxy; /* No need to ref as the lifecycle is tied to proxy */ ++ closure->call_id = t1->call_id; ++ closure->func = t1->notify; ++ closure->data = t1->user_data; ++ closure->free_data_func = t1->destroy; ++ dbus_pending_call_set_notify (pending, d_pending_call_notify, ++ closure, ++ d_pending_call_free); ++ } ++ ++ g_hash_table_insert (priv->pending_calls, GUINT_TO_POINTER (t1->call_id), pending); ++} ++ + static guint + dbus_g_proxy_begin_call_internal (DBusGProxy *proxy, + const char *method, +@@ -2182,52 +2217,42 @@ + gpointer user_data, + GDestroyNotify destroy, + GValueArray *args, +- int timeout) ++ int timeout) + { ++ struct dbus_g_proxy_begin_call_internal_helper_args t1; ++ + DBusMessage *message; + DBusPendingCall *pending; +- GPendingNotifyClosure *closure; +- guint call_id; + DBusGProxyPrivate *priv = DBUS_G_PROXY_GET_PRIVATE(proxy); + ++ t1.proxy = proxy; ++ t1.notify = notify; ++ t1.user_data = user_data; ++ t1.destroy = destroy; ++ + pending = NULL; + + message = dbus_g_proxy_marshal_args_to_message (proxy, method, args); + if (!message) + goto oom; + +- if (!dbus_connection_send_with_reply (priv->manager->connection, +- message, +- &pending, +- timeout)) ++ if (!dbus_connection_send_with_reply_setup (priv->manager->connection, ++ message, ++ &pending, ++ dbus_g_proxy_begin_call_internal_helper, ++ &t1, ++ timeout)) + goto oom; + dbus_message_unref (message); +- ++ + /* If we got a NULL pending, that means the connection was disconnected, +- * and we need to abort this call. ++ * and we need to abort this call. + * https://bugs.freedesktop.org/show_bug.cgi?id=12675 + */ + if (pending == NULL) + return 0; + +- call_id = ++priv->call_id_counter; +- +- if (notify != NULL) +- { +- closure = g_new (GPendingNotifyClosure, 1); +- closure->proxy = proxy; /* No need to ref as the lifecycle is tied to proxy */ +- closure->call_id = call_id; +- closure->func = notify; +- closure->data = user_data; +- closure->free_data_func = destroy; +- dbus_pending_call_set_notify (pending, d_pending_call_notify, +- closure, +- d_pending_call_free); +- } +- +- g_hash_table_insert (priv->pending_calls, GUINT_TO_POINTER (call_id), pending); +- +- return call_id; ++ return t1.call_id; + oom: + g_error ("Out of memory"); + return 0; diff --git a/recipes/dbus/dbus-glib-0.82/no-examples.patch b/recipes/dbus/dbus-glib-0.82/no-examples.patch new file mode 100644 index 0000000000..483153db74 --- /dev/null +++ b/recipes/dbus/dbus-glib-0.82/no-examples.patch @@ -0,0 +1,8 @@ +--- dbus-glib-0.70/dbus/Makefile.am.orig 2006-07-23 16:04:43.000000000 +0200 ++++ dbus-glib-0.70/dbus/Makefile.am 2006-07-23 16:04:52.000000000 +0200 +@@ -1,4 +1,4 @@ +-SUBDIRS = . examples ++SUBDIRS = . + + INCLUDES=-I$(top_srcdir) $(DBUS_CFLAGS) $(DBUS_GLIB_CFLAGS) $(DBUS_GLIB_TOOL_CFLAGS) -DDBUS_COMPILATION=1 -DDBUS_LOCALEDIR=\"$(prefix)/@DATADIRNAME@/locale\" + diff --git a/recipes/dbus/dbus-glib-0.82/no-introspect.patch b/recipes/dbus/dbus-glib-0.82/no-introspect.patch new file mode 100644 index 0000000000..f667c06879 --- /dev/null +++ b/recipes/dbus/dbus-glib-0.82/no-introspect.patch @@ -0,0 +1,14 @@ +Index: dbus-glib-0.82/tools/Makefile.am +=================================================================== +--- dbus-glib-0.82.orig/tools/Makefile.am ++++ dbus-glib-0.82/tools/Makefile.am +@@ -3,9 +3,6 @@ + nodist_libdbus_glib_HEADERS = dbus-glib-bindings.h + libdbus_glibdir = $(includedir)/dbus-1.0/dbus + +-dbus-glib-bindings.h: dbus-bus-introspect.xml $(top_builddir)/dbus/dbus-binding-tool$(EXEEXT) +- $(DBUS_BINDING_TOOL) --mode=glib-client --prefix=dbus_bus --output=dbus-glib-bindings.h dbus-bus-introspect.xml +- + BUILT_SOURCES = dbus-glib-bindings.h dbus-bus-introspect.xml + + if USE_INTROSPECT_XML |