diff --git a/webclient/recents/recents-controller.js b/webclient/recents/recents-controller.js
index 1ead08cae801f221ee90a06a1450b190dd255766..d33d41a922c457319f14aa32167ded8f0d70722d 100644
--- a/webclient/recents/recents-controller.js
+++ b/webclient/recents/recents-controller.js
@@ -29,7 +29,7 @@ angular.module('RecentsController', ['matrixService', 'eventHandlerService'])
         // Refresh the list on matrix invitation and message event
         $scope.$on(eventHandlerService.MEMBER_EVENT, function(ngEvent, event, isLive) {
             var config = matrixService.config();
-            if (event.state_key === config.user_id && event.content.membership === "invite") {
+            if (isLive && event.state_key === config.user_id && event.content.membership === "invite") {
                 console.log("Invited to room " + event.room_id);
                 // FIXME push membership to top level key to match /im/sync
                 event.membership = event.content.membership;
@@ -39,7 +39,9 @@ angular.module('RecentsController', ['matrixService', 'eventHandlerService'])
             }
         });
         $scope.$on(eventHandlerService.MSG_EVENT, function(ngEvent, event, isLive) {
-            $scope.rooms[event.room_id].lastMsg = event;
+            if (isLive) {
+                $scope.rooms[event.room_id].lastMsg = event;              
+            }
         });
     };