adapter: Fix error message for StopPollLoop
authorWiktor Lawski <wiktor.lawski@tieto.com>
Wed, 19 Sep 2012 13:20:41 +0000 (15:20 +0200)
committerSamuel Ortiz <sameo@linux.intel.com>
Fri, 21 Sep 2012 07:20:24 +0000 (09:20 +0200)
Now when adapter is not polling and StopPollLoop is called, correct error
message will be returned.

src/adapter.c
src/error.c
src/near.h

index 892381c..e5f9e6a 100644 (file)
@@ -424,6 +424,9 @@ static DBusMessage *stop_poll_loop(DBusConnection *conn,
 
        DBG("conn %p", conn);
 
+       if (adapter->polling == FALSE)
+               return __near_error_not_polling(msg);
+
        err = __near_netlink_stop_poll(adapter->idx);
        if (err < 0)
                return __near_error_failed(msg, -err);
index f166380..4012b5b 100644 (file)
@@ -119,6 +119,12 @@ DBusMessage *__near_error_not_found(DBusMessage *msg)
                                                ".NotFound", "Not found");
 }
 
+DBusMessage *__near_error_not_polling(DBusMessage *msg)
+{
+       return g_dbus_create_error(msg, NFC_ERROR_INTERFACE
+                                               ".Failed", "Not polling");
+}
+
 DBusMessage *__near_error_no_carrier(DBusMessage *msg)
 {
        return g_dbus_create_error(msg, NFC_ERROR_INTERFACE
index c6debdd..aee34be 100644 (file)
@@ -51,6 +51,7 @@ DBusMessage *__near_error_not_unique(DBusMessage *msg);
 DBusMessage *__near_error_not_supported(DBusMessage *msg);
 DBusMessage *__near_error_not_implemented(DBusMessage *msg);
 DBusMessage *__near_error_not_found(DBusMessage *msg);
+DBusMessage *__near_error_not_polling(DBusMessage *msg);
 DBusMessage *__near_error_no_carrier(DBusMessage *msg);
 DBusMessage *__near_error_in_progress(DBusMessage *msg);
 DBusMessage *__near_error_already_exists(DBusMessage *msg);