summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJosé Alburquerque <jaalburqu@svn.gnome.org>2011-06-08 16:44:51 -0400
committerJosé Alburquerque <jaalburqu@svn.gnome.org>2011-06-08 16:46:22 -0400
commit383d92d5647457593114cb1028cc7e8663ed5c71 (patch)
tree5e615bdc2b9ec9d49a3b9794d9e881361ace4ae0
parent26529018517c845628a2b510198337cfaac55ac0 (diff)
downloadglibmm-383d92d5647457593114cb1028cc7e8663ed5c71.tar.gz
Gio::DBus::Connection::emit_signal(): Replace empty strings with NULL.
* gio/src/dbusconnection.ccg (emit_signal): Pass NULL to the C function call where strings are empty allowing emitting signals to all listeners. Bug #645072 (Yannick Guesnet).
-rw-r--r--ChangeLog10
-rw-r--r--gio/src/dbusconnection.ccg7
2 files changed, 15 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index e78a7968..7485956a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2011-06-08 José Alburquerque <jaalburqu@svn.gnome.org>
+
+ Gio::DBus::Connection::emit_signal(): Replace empty strings with NULL.
+
+ * gio/src/dbusconnection.ccg (emit_signal): Pass NULL to the C
+ function call where strings are empty allowing emitting signals to all
+ listeners.
+
+ Bug #645072 (Yannick Guesnet).
+
2011-06-07 José Alburquerque <jaalburqu@svn.gnome.org>
M4 Macros: Rename the _INITIALIZER macro to _INITIALIZATION.
diff --git a/gio/src/dbusconnection.ccg b/gio/src/dbusconnection.ccg
index f54a9fea..64e24248 100644
--- a/gio/src/dbusconnection.ccg
+++ b/gio/src/dbusconnection.ccg
@@ -762,8 +762,11 @@ void Connection::emit_signal(
GError* gerror = 0;
g_dbus_connection_emit_signal(gobj(),
- destination_bus_name.c_str(), object_path.c_str(), interface_name.c_str(),
- signal_name.c_str(), const_cast<GVariant*>(parameters.gobj()), &gerror);
+ (destination_bus_name.empty() ? 0 : destination_bus_name.c_str()),
+ (object_path.empty()? 0 : object_path.c_str()),
+ (interface_name.empty() ? 0 : interface_name.c_str()),
+ (signal_name.empty() ? 0 : signal_name.c_str()),
+ const_cast<GVariant*>(parameters.gobj()), &gerror);
if(gerror)
::Glib::Error::throw_exception(gerror);