The virGDBusBusInit is supposed to return a reference to requested bus type (system/session) or, if non-shared bus is requested then create a new bus of the type. As an argument, it gets a double pointer to GError which is passed to all g_dbus_*() calls which allocate it on failure. Pretty standard approach. However, since it is a double pointer we must dereference the first level to see if the value is NULL. IOW: if (*error) Signed-off-by: Michal Privoznik <mprivozn@xxxxxxxxxx> --- src/util/virgdbus.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/util/virgdbus.c b/src/util/virgdbus.c index 4360a6acff..19fd7e2fe4 100644 --- a/src/util/virgdbus.c +++ b/src/util/virgdbus.c @@ -55,7 +55,7 @@ virGDBusBusInit(GBusType type, GError **error) return g_bus_get_sync(type, NULL, error); } else { address = g_dbus_address_get_for_bus_sync(type, NULL, error); - if (error) + if (*error) return NULL; return g_dbus_connection_new_for_address_sync(address, G_DBUS_CONNECTION_FLAGS_NONE, -- 2.26.2