summaryrefslogtreecommitdiff
path: root/gdbus
AgeCommit message (Collapse)AuthorFilesLines
2014-07-17Imported Upstream version 1.24upstream/1.24Zhang zhengguang5-348/+370
2013-05-08gdbus: Fix using NULL DBusPendingCall when disconnected from D-BusAnderson Lizardo1-0/+5
From D-Bus documentation for dbus_connection_send_with_reply(): "Warning: if the connection is disconnected or you try to send Unix file descriptors on a connection that does not support them, the DBusPendingCall will be set to NULL, so be careful with this." Fix these errors when killing D-Bus daemon with the client still running: process 5712: arguments to dbus_pending_call_set_notify() were incorrect, assertion "pending != NULL" failed in file ../../dbus/dbus-pending-call.c line 596. This is normally a bug in some application using the D-Bus library. process 5712: arguments to dbus_pending_call_unref() were incorrect, assertion "pending != NULL" failed in file ../../dbus/dbus-pending-call.c line 572. This is normally a bug in some application using the D-Bus library.
2013-05-08gdbus: Fix segfault when D-Bus daemon exitsAnderson Lizardo1-0/+2
Fix this crash if D-Bus exits while the client is still connected to it: ==5570== Invalid read of size 1 ==5570== at 0x402D28E: strcmp (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==5570== by 0x4070E22: g_str_equal (ghash.c:1704) ==5570== by 0x8055F61: message_filter (client.c:1123) ==5570== by 0x4141500: dbus_connection_dispatch (in /lib/i386-linux-gnu/libdbus-1.so.3.5.8) ==5570== by 0x80506F7: message_dispatch (mainloop.c:76) ==5570== by 0x4081A7E: g_timeout_dispatch (gmain.c:3882) ==5570== by 0x4080D85: g_main_context_dispatch (gmain.c:2539) ==5570== by 0x4081124: g_main_context_iterate.isra.21 (gmain.c:3146) ==5570== by 0x408156A: g_main_loop_run (gmain.c:3340) ==5570== by 0x41BF4D2: (below main) (libc-start.c:226) ==5570== Address 0x0 is not stack'd, malloc'd or (recently) free'd ==5570== ==5570==
2013-05-04gdbus: Fix calling GetManagedObjects twice in a rowLuiz Augusto von Dentz1-7/+18
Calling g_dbus_client_new followed by g_dbus_client_set_proxy_handlers cause two calls to GetManagedObjects in a row as GetNameOwner reply is asyncronously it triggers the second call because the handlers have been set by g_dbus_client_set_proxy_handlers.
2013-04-09gdbus: Fix not calling property_changed callbackLuiz Augusto von Dentz1-13/+10
In case a property did not appear by the time proxy_added was called property_changed has to be called if it appear latter otherwise the application will be unaware of it.
2013-04-09gdbus: Use gcc builtin instead of g_atomicLucas De Marchi1-6/+6
g_atomic_* end up using G_STATIC_ASSERT, causing gcc 4.8 to yell due to -Wunused-local-typedefs. gdbus/client.c: In function ‘g_dbus_client_ref’: /usr/include/glib-2.0/glib/gmacros.h:162:53: error: typedef ‘_GStaticAssertCompileTimeAssertion_2’ locally defined but not used [-Werror=unused-local-typedefs] #define G_STATIC_ASSERT(expr) typedef char G_PASTE (_GStaticAssertCompileTimeAssertion_, __COUNTER__)[(expr) ? 1 : -1]
2013-02-23gdbus: Always unreference the message in g_dbus_send_message()Tomasz Bursztyka1-2/+3
A quick fix on g_dbus_send_message(), if check_signal() fails it returns FALSE without unreferencing the message as it should. This patch fixes it.
2013-02-15gdbus: Add g_dbus_proxy_set_removed_watchDenis Kenzior2-0/+20
2013-02-14gdbus: Fix missing PropertiesChanged signalVinicius Costa Gomes1-2/+5
If D-Bus ObjectManager is not supported, InterfacesAdded signal checking needs to be ignored otherwise PropertiesChanged signal will never be sent.
2013-02-11gdbus: Don't call property changed callback during client initMarcel Holtmann1-9/+10
When the client uses ObjectManager to init properties, do not call property changed callbacks. They should only be called once the proxy added has been successfully signaled since the proxy itself provides a full copy of available properties.
2013-02-01gdbus: Fix unpublished interface signal emissionJohan Hedberg1-0/+4
If we haven't published an interface yet (i.e. it's in the data->added list), we should just ignore any property changed indications as the values for the properties will anyway be part of the InterfacesAdded signal.
2013-01-21gdbus: Check for valid path before handling propertiesMarcel Holtmann1-0/+6
2013-01-06gdbus: Fix memory leak on properties_set()Anderson Lizardo1-1/+6
The pointer returned by dbus_message_iter_get_signature() must be freed with dbus_free(). Fixes this memory leak: ==1857== 16 bytes in 1 blocks are definitely lost in loss record 104 of 251 ==1857== at 0x402BF52: realloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==1857== by 0x415E286: dbus_realloc (in /lib/i386-linux-gnu/libdbus-1.so.3.5.8) ==1857== by 0x415E70B: ??? (in /lib/i386-linux-gnu/libdbus-1.so.3.5.8) ==1857== by 0x415F17B: ??? (in /lib/i386-linux-gnu/libdbus-1.so.3.5.8) ==1857== by 0x414CB33: dbus_message_iter_get_signature (in /lib/i386-linux-gnu/libdbus-1.so.3.5.8) ==1857== by 0x8053239: properties_set (object.c:899) ==1857== by 0x5FFFFF: ??? ==1857==
2013-01-05gdbus: Check signature of property value before calling setterMarcel Holtmann1-0/+5
2013-01-04gdbus: Don't include just added interfaces in GetManagedObjectsLucas De Marchi1-1/+7
If we received a call to ObjectManager.GetManagedObject we should not include in the response the interfaces in data->added. This is because it's not guaranteed that those interfaces will trigger an InterfacesAdded signal, which is the case if the interface is removed in the same mainloop iteration.
2013-01-04gdbus: Simplify generated introspectionLucas De Marchi1-65/+38
The generated introspection is not supposed to be read as is by human, so there's no point in printing the indentation or writing more code to use auto-close tags. If it's desired to read the raw xml file, user can always use other tools to transform the output such as "xmllint --format". This also fixes a missing </property> when property is deprecated.
2013-01-02gdbus: Hold client reference during get name owner replyMarcel Holtmann1-0/+4
2012-12-30gdbus: Call check_signals when sending signals with g_dbus_send_messageLuiz Augusto von Dentz1-0/+9
If message passed to g_dbus_send_message is a signal verify if it is a valid and there really exists an interface with respective signal name.
2012-12-30gdbus: Check if the interface being registered is validLuiz Augusto von Dentz1-6/+36
This prevent registering interfaces that are empty or have all members marked as experiemental.
2012-12-30gdbus: Introduce G_DBUS_PROPERTY_FLAG_EXPERIMENTALLuiz Augusto von Dentz2-18/+33
This flag can be used to mark properties as experimental, marked properties are disabled by default and can be enabled by setting G_DBUS_FLAG_ENABLE_EXPERIMENTAL using g_dbus_set_flags.
2012-12-30gdbus: Introduce G_DBUS_SIGNAL_FLAG_EXPERIMENTALLuiz Augusto von Dentz2-4/+23
This flag can be used to mark signals as experimental, marked signals are disabled by default and can be enabled by setting G_DBUS_FLAG_ENABLE_EXPERIMENTAL using g_dbus_set_flags.
2012-12-30gdbus: Introduce G_DBUS_METHOD_FLAG_EXPERIMENTALLuiz Augusto von Dentz2-3/+45
This flag can be used to mark methods as experimental, marked methods are disable by default and can be enabled by setting G_DBUS_FLAG_ENABLE_EXPERIMENTAL using g_dbus_set_flags.
2012-12-30gdbus: Include changed properties only once per signalMarcel Holtmann1-0/+3
2012-12-29gdbus: Update properties on D-Bus client re-connectionsMarcel Holtmann1-4/+22
2012-12-29gdbus: Add function to manually refresh propertiesMarcel Holtmann2-0/+85
2012-12-29gdbus: Add support for proxy property change notificationsMarcel Holtmann2-4/+30
2012-12-29gdbus: Fix handling of client connect/disconnect signalsMarcel Holtmann1-11/+12
2012-12-29gdbus: Protect standalone proxy creation with client referenceMarcel Holtmann1-10/+8
2012-12-28gdbus: Use object manager only if callback functions are setMarcel Holtmann1-8/+7
2012-12-28gdbus: Use client service name and not hardcoded org.bluezMarcel Holtmann1-1/+1
2012-12-28gdbus: Add support for creating D-Bus proxies without object managerMarcel Holtmann2-62/+147
2012-12-22gdbus: Avoid using g_ptr_array_new_full convenience functionMarcel Holtmann1-1/+2
The g_ptr_array_new_full function only got introduced with GLib 2.30 and to avoid requiring a newer GLib use g_ptr_array_set_free_func instead.
2012-12-19gdbus: Increase the method call timeout to 5 minutesMarcel Holtmann1-1/+3
2012-12-19gdbus: Add helper for sending async error repliesMarcel Holtmann2-0/+38
2012-12-19gdbus: Fix race condition with creating duplicate client proxiesMarcel Holtmann1-0/+23
2012-12-19gdbus: Fix issue with unref of client while parsing interfacesMarcel Holtmann1-0/+8
2012-12-19gdbus: Fix issue with unref of client in connect handlerMarcel Holtmann1-0/+8
2012-12-19gdbus: Add support for D-Bus client method callsMarcel Holtmann2-0/+82
2012-12-19gdbus: Add callback support for handling property changesMarcel Holtmann2-10/+31
2012-12-19gdbus: Handle property changed signals and update propertyMarcel Holtmann1-31/+107
2012-12-19gdbus: Set property changed filter match rule for each proxyMarcel Holtmann1-40/+57
2012-12-19gdbus: Use a GPtrArray for the match rulesMarcel Holtmann1-18/+24
2012-12-19gdbus: Add support for setting D-Bus client basic propertiesMarcel Holtmann2-0/+99
2012-12-19gdbus: Deep copy of variants also requires a signatureMarcel Holtmann1-2/+7
2012-12-19gdbus: Add support for complex D-Bus client propertiesMarcel Holtmann1-16/+46
2012-12-19gdbus: Add support for D-Bus client propertiesMarcel Holtmann2-3/+126
2012-12-19gdbus: Add support for D-Bus client proxiesMarcel Holtmann2-4/+343
2012-12-19gdbus: Add helper functions for simple D-Bus clientsMarcel Holtmann2-0/+355
2012-11-30gdbus: Add g_dbus_add_properties_watch functionLuiz Augusto von Dentz2-0/+33
Convenient function to create watches for D-Bus properties.
2012-11-29gdbus: Don't automatically attach ObjectManagerLucas De Marchi2-21/+36
Let each project attach the object manager interface instead of registering it automatically.