From 4f6acf114cf4ac3f90266ab33f12d599e0f2eb5d Mon Sep 17 00:00:00 2001
From: Kegan Dougal <kegan@matrix.org>
Date: Mon, 27 Oct 2014 17:05:05 +0000
Subject: [PATCH] Fix SYWEB-110 : Prevent room ID leaking by looking for an
 m.room.name

---
 webclient/components/matrix/event-handler-service.js | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/webclient/components/matrix/event-handler-service.js b/webclient/components/matrix/event-handler-service.js
index e7109c0cb4..b1580b3d8a 100644
--- a/webclient/components/matrix/event-handler-service.js
+++ b/webclient/components/matrix/event-handler-service.js
@@ -221,9 +221,19 @@ function(matrixService, $rootScope, $q, $timeout, mPresence) {
                         message = "* " + displayname + " " + message;
                     }
 
+                    var roomTitle = matrixService.getRoomIdToAliasMapping(event.room_id);
+                    var theRoom = $rootScope.events.rooms[event.room_id];
+                    if (!roomTitle && theRoom && theRoom["m.room.name"] && theRoom["m.room.name"].content) {
+                        roomTitle = theRoom["m.room.name"].content.name;
+                    }
+
+                    if (!roomTitle) {
+                        roomTitle = event.room_id;
+                    }
+                    
                     var notification = new window.Notification(
                         displayname +
-                        " (" + (matrixService.getRoomIdToAliasMapping(event.room_id) || event.room_id) + ")", // FIXME: don't leak room_ids here
+                        " (" + roomTitle + ")",
                     {
                         "body": message,
                         "icon": member ? member.avatar_url : undefined
-- 
GitLab