Only allow service resorting when they are in the same state
authorMarcel Holtmann <marcel@holtmann.org>
Fri, 7 Aug 2009 17:04:49 +0000 (10:04 -0700)
committerMarcel Holtmann <marcel@holtmann.org>
Fri, 7 Aug 2009 17:04:49 +0000 (10:04 -0700)
src/service.c

index 16b6d7e..f990e29 100644 (file)
@@ -804,6 +804,9 @@ static DBusMessage *move_before(DBusConnection *conn,
 
        DBG("target %s", target->identifier);
 
+       if (target->state != service->state)
+               return __connman_error_invalid_service(msg);
+
        g_get_current_time(&service->modified);
        __connman_storage_save_service(service);
 
@@ -838,6 +841,9 @@ static DBusMessage *move_after(DBusConnection *conn,
 
        DBG("target %s", target->identifier);
 
+       if (target->state != service->state)
+               return __connman_error_invalid_service(msg);
+
        g_get_current_time(&service->modified);
        __connman_storage_save_service(service);