#if defined DROUTE_DEBUG
#define _DROUTE_DEBUG(format, args...) g_print (format , ## args)
#else
- #define _DROUTE_DEBUG
+ #define _DROUTE_DEBUG(format, args...)
#endif
struct _DRouteContext
cnx->bus = bus;
cnx->registered_paths = g_ptr_array_new ();
cnx->introspect_dir = g_strdup(introspect_dir);
+
+ return cnx;
}
void
const void *data)
{
DRoutePath *new_path;
+ gboolean registered;
new_path = path_new (cnx, (void *) data, NULL);
- if (!dbus_connection_register_object_path (cnx->bus, path, &droute_vtable, new_path))
+ registered = dbus_connection_register_object_path (cnx->bus, path, &droute_vtable, new_path);
+ if (!registered)
oom();
g_ptr_array_add (cnx->registered_paths, new_path);
return reply;
}
+DBusMessage *
+droute_out_of_memory_error (DBusMessage *message)
+{
+ DBusMessage *reply;
+ gchar *errmsg;
+
+ errmsg= g_strdup_printf (
+ "Method \"%s\" with signature \"%s\" on interface \"%s\" could not be processed due to lack of memory\n",
+ dbus_message_get_member (message),
+ dbus_message_get_signature (message),
+ dbus_message_get_interface (message));
+ reply = dbus_message_new_error (message,
+ DBUS_ERROR_NO_MEMORY,
+ errmsg);
+ g_free (errmsg);
+ return reply;
+}
+
+DBusMessage *
+droute_invalid_arguments_error (DBusMessage *message)
+{
+ DBusMessage *reply;
+ gchar *errmsg;
+
+ errmsg= g_strdup_printf (
+ "Method \"%s\" with signature \"%s\" on interface \"%s\" was supplied with invalid arguments\n",
+ dbus_message_get_member (message),
+ dbus_message_get_signature (message),
+ dbus_message_get_interface (message));
+ reply = dbus_message_new_error (message,
+ DBUS_ERROR_INVALID_ARGS,
+ errmsg);
+ g_free (errmsg);
+ return reply;
+}
+
/*END------------------------------------------------------------------------*/