Bug#638871: g_dbus_connection_register_object does not set error on some conditions

Simon McVittie smcv at debian.org
Thu Feb 6 10:47:31 UTC 2014


On Mon, 22 Aug 2011 at 16:15:16 +0100, Marcin Owsiany wrote:
> And when an invalid object path is specified in the
> applet->priv->object_path property, it leads to:
> 
> 1) the following warning being issued:
> 
> (command_runner:1931): GLib-GIO-CRITICAL **:
> g_dbus_connection_register_object: assertion `object_path != NULL &&
> g_variant_is_object_path (object_path)' failed

I don't think this is a bug; at least, upstream don't consider it to be.
Their policy is that the documentation guarantees only apply when
the function is used correctly, and that invalid arguments that trip
a g_return_if_fail check are considered to be incorrect use, which
causes undefined behaviour.

I've asked to make this clearer:
https://bugzilla.gnome.org/show_bug.cgi?id=660809

> - applet->priv->object_path is an invalid (as far as
>   g_variant_is_object_path is concerned) string:
>   "/org/gnome/panel/applet/Id=CommandRunnetApplet/0"

If you're calling a function in GLib that takes an object-path argument,
upstream's policy is that you are responsible for ensuring that it is
actually a syntactically valid object-path. In this case the problem is
"=", which isn't allowed - see the D-Bus Specification for details.

    S



More information about the pkg-gnome-maintainers mailing list