[rhythmbox] update metadata service activity timestamp after processing messages



commit 1b49317638bd0c7c00df17381b6ad59c2bae4529
Author: Jonathan Matthew <jonathan d14n org>
Date:   Fri May 8 18:30:07 2009 +1000

    update metadata service activity timestamp after processing messages
    
    We want to measure idle time, and that starts after we're done with
    the request, not before.
---
 metadata/rb-metadata-dbus-service.c |   15 +++++++++------
 1 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/metadata/rb-metadata-dbus-service.c b/metadata/rb-metadata-dbus-service.c
index 1f0bfd2..3cd1f31 100644
--- a/metadata/rb-metadata-dbus-service.c
+++ b/metadata/rb-metadata-dbus-service.c
@@ -366,20 +366,23 @@ static DBusHandlerResult
 _handle_message (DBusConnection *connection, DBusMessage *message, void *data)
 {
 	ServiceData *svc = (ServiceData *)data;
+	DBusHandlerResult result;
 	rb_debug ("handling metadata service message");
 
-	svc->last_active = time (NULL);
 	if (dbus_message_is_method_call (message, RB_METADATA_DBUS_INTERFACE, "load")) {
-		return rb_metadata_dbus_load (connection, message, svc);
+		result = rb_metadata_dbus_load (connection, message, svc);
 	} else if (dbus_message_is_method_call (message, RB_METADATA_DBUS_INTERFACE, "canSave")) {
-		return rb_metadata_dbus_can_save (connection, message, svc);
+		result = rb_metadata_dbus_can_save (connection, message, svc);
 	} else if (dbus_message_is_method_call (message, RB_METADATA_DBUS_INTERFACE, "save")) {
-		return rb_metadata_dbus_save (connection, message, svc);
+		result = rb_metadata_dbus_save (connection, message, svc);
 	} else if (dbus_message_is_method_call (message, RB_METADATA_DBUS_INTERFACE, "ping")) {
-		return rb_metadata_dbus_ping (connection, message, svc);
+		result = rb_metadata_dbus_ping (connection, message, svc);
 	} else {
-		return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
+		result = DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
 	}
+
+	svc->last_active = time (NULL);
+	return result;
 }
 
 static void



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]