projects
/
platform
/
upstream
/
glib.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
9da85c7
)
[kdbus] Fix problem with receiving messages without body
author
Lukasz Skalski
<l.skalski@samsung.com>
Wed, 6 May 2015 10:35:47 +0000
(10:35 +0000)
committer
Maciej Wereski
<m.wereski@partner.samsung.com>
Fri, 10 Jul 2015 09:47:45 +0000
(11:47 +0200)
gio/gkdbus.c
patch
|
blob
|
history
diff --git
a/gio/gkdbus.c
b/gio/gkdbus.c
index
dcaf2a1
..
d0b0881
100644
(file)
--- a/
gio/gkdbus.c
+++ b/
gio/gkdbus.c
@@
-1991,7
+1991,6
@@
g_kdbus_decode_dbus_msg (GKDBusWorker *worker,
GVariant *value;
guint64 serial;
GVariant *value;
guint64 serial;
-
message = g_dbus_message_new ();
body_vectors = g_array_new (FALSE, FALSE, sizeof (GVariantVector));
message = g_dbus_message_new ();
body_vectors = g_array_new (FALSE, FALSE, sizeof (GVariantVector));
@@
-2162,12
+2161,13
@@
g_kdbus_decode_dbus_msg (GKDBusWorker *worker,
g_dbus_message_set_serial (message, serial);
g_dbus_message_set_message_type (message, type);
g_dbus_message_set_serial (message, serial);
g_dbus_message_set_message_type (message, type);
- if (g_dbus_message_get_header (message, G_DBUS_MESSAGE_HEADER_FIELD_SIGNATURE) != NULL)
- {
- body = g_variant_get_variant (parts[1]);
- g_dbus_message_set_body (message, body);
- g_variant_unref (body);
- }
+ body = g_variant_get_variant (parts[1]);
+ if (!g_variant_is_of_type (body, G_VARIANT_TYPE ("()")))
+ g_dbus_message_set_body (message, body);
+ else
+ g_dbus_message_set_body (message, NULL);
+
+ g_variant_unref (body);
g_variant_unref (parts[1]);
//g_print ("Received:\n%s\n", g_dbus_message_print (message, 2));
g_variant_unref (parts[1]);
//g_print ("Received:\n%s\n", g_dbus_message_print (message, 2));