diff options
author | David Zeuthen <davidz@redhat.com> | 2010-04-29 16:44:41 -0400 |
---|---|---|
committer | David Zeuthen <davidz@redhat.com> | 2010-04-29 16:44:41 -0400 |
commit | b32265a31ee47c66524f5a96ec5baa110e3fd011 (patch) | |
tree | ecf89141ed12b5d2210dc0e3144770d2436b6b94 | |
parent | 9350b756326a99d230a6a7824958862a6eaf1416 (diff) |
Ensure return_if_fail in g_bus_{own|watch}_name APIs
Also allow NULL for every conceivable kind of handler.
-rw-r--r-- | gdbus/gdbusnameowning.c | 23 | ||||
-rw-r--r-- | gdbus/gdbusnamewatching.c | 13 |
2 files changed, 17 insertions, 19 deletions
diff --git a/gdbus/gdbusnameowning.c b/gdbus/gdbusnameowning.c index e90037b..09bdaaf 100644 --- a/gdbus/gdbusnameowning.c +++ b/gdbus/gdbusnameowning.c @@ -26,6 +26,7 @@ #include <glib/gi18n.h> +#include "gdbusutils.h" #include "gdbusnameowning.h" #include "gdbuserror.h" #include "gdbusprivate.h" @@ -450,8 +451,8 @@ connection_get_cb (GObject *source_object, * @connection: A #GDBusConnection that is not closed. * @name: The well-known name to own. * @flags: A set of flags from the #GBusNameOwnerFlags enumeration. - * @name_acquired_handler: Handler to invoke when @name is acquired. - * @name_lost_handler: Handler to invoke when @name is lost. + * @name_acquired_handler: Handler to invoke when @name is acquired or %NULL. + * @name_lost_handler: Handler to invoke when @name is lost or %NULL. * @user_data: User data to pass to handlers. * @user_data_free_func: Function for freeing @user_data or %NULL. * @@ -472,12 +473,9 @@ g_bus_own_name_on_connection (GDBusConnection *connection, { Client *client; - g_return_val_if_fail (connection != NULL, 0); + g_return_val_if_fail (G_IS_DBUS_CONNECTION (connection), 0); g_return_val_if_fail (!g_dbus_connection_is_closed (connection), 0); - g_return_val_if_fail (name != NULL, 0); - //g_return_val_if_fail (TODO_is_well_known_name (), 0); - g_return_val_if_fail (name_acquired_handler != NULL, 0); - g_return_val_if_fail (name_lost_handler != NULL, 0); + g_return_val_if_fail (g_dbus_is_name (name) && !g_dbus_is_unique_name (name), 0); G_LOCK (lock); @@ -517,8 +515,8 @@ g_bus_own_name_on_connection (GDBusConnection *connection, * @name: The well-known name to own. * @flags: A set of flags from the #GBusNameOwnerFlags enumeration. * @bus_acquired_handler: Handler to invoke when connected to the bus of type @bus_type or %NULL. - * @name_acquired_handler: Handler to invoke when @name is acquired. - * @name_lost_handler: Handler to invoke when @name is lost. + * @name_acquired_handler: Handler to invoke when @name is acquired or %NULL. + * @name_lost_handler: Handler to invoke when @name is lost or %NULL. * @user_data: User data to pass to handlers. * @user_data_free_func: Function for freeing @user_data or %NULL. * @@ -587,10 +585,7 @@ g_bus_own_name (GBusType bus_type, Client *client; g_return_val_if_fail (bus_type != G_BUS_TYPE_NONE, 0); - g_return_val_if_fail (name != NULL, 0); - //g_return_val_if_fail (TODO_is_well_known_name (), 0); - g_return_val_if_fail (name_acquired_handler != NULL, 0); - g_return_val_if_fail (name_lost_handler != NULL, 0); + g_return_val_if_fail (g_dbus_is_name (name) && !g_dbus_is_unique_name (name), 0); G_LOCK (lock); @@ -637,6 +632,8 @@ g_bus_unown_name (guint owner_id) { Client *client; + g_return_if_fail (owner_id > 0); + client = NULL; G_LOCK (lock); diff --git a/gdbus/gdbusnamewatching.c b/gdbus/gdbusnamewatching.c index fe6cc41..cfd13ef 100644 --- a/gdbus/gdbusnamewatching.c +++ b/gdbus/gdbusnamewatching.c @@ -26,6 +26,7 @@ #include <glib/gi18n.h> +#include "gdbusutils.h" #include "gdbusnamewatching.h" #include "gdbuserror.h" #include "gdbusprivate.h" @@ -493,11 +494,11 @@ connection_get_cb (GObject *source_object, /** * g_bus_watch_name: - * @bus_type: The type of bus to watch a name on (can't be #G_BUS_TYPE_NONE). + * @bus_type: The type of bus to watch a name on. * @name: The name (well-known or unique) to watch. * @flags: Flags from the #GBusNameWatcherFlags enumeration. - * @name_appeared_handler: Handler to invoke when @name is known to exist. - * @name_vanished_handler: Handler to invoke when @name is known to not exist. + * @name_appeared_handler: Handler to invoke when @name is known to exist or %NULL. + * @name_vanished_handler: Handler to invoke when @name is known to not exist or %NULL. * @user_data: User data to pass to handlers. * @user_data_free_func: Function for freeing @user_data or %NULL. * @@ -546,9 +547,7 @@ g_bus_watch_name (GBusType bus_type, Client *client; g_return_val_if_fail (bus_type != G_BUS_TYPE_NONE, 0); - g_return_val_if_fail (name != NULL, 0); - g_return_val_if_fail (name_appeared_handler != NULL, 0); - g_return_val_if_fail (name_vanished_handler != NULL, 0); + g_return_val_if_fail (g_dbus_is_name (name), 0); G_LOCK (lock); @@ -594,6 +593,8 @@ g_bus_unwatch_name (guint watcher_id) { Client *client; + g_return_if_fail (watcher_id > 0); + client = NULL; G_LOCK (lock); |