[Libreoffice-commits] online.git: kit/Kit.cpp
Ashod Nakashian
ashod.nakashian at collabora.co.uk
Mon Jan 30 08:06:49 UTC 2017
kit/Kit.cpp | 17 +++--------------
1 file changed, 3 insertions(+), 14 deletions(-)
New commits:
commit f33f014f987b1fb210585fa1ec34f5ee467ea241
Author: Ashod Nakashian <ashod.nakashian at collabora.co.uk>
Date: Mon Jan 30 01:43:06 2017 -0500
wsd: simplify tracking of user info
Change-Id: Iac860c5c1862fa3bbb1b6dd39e827712eb34ed9a
Reviewed-on: https://gerrit.libreoffice.org/33682
Reviewed-by: Ashod Nakashian <ashnakash at gmail.com>
Tested-by: Ashod Nakashian <ashnakash at gmail.com>
diff --git a/kit/Kit.cpp b/kit/Kit.cpp
index e093d0b..ad47009 100644
--- a/kit/Kit.cpp
+++ b/kit/Kit.cpp
@@ -1013,18 +1013,7 @@ private:
{
std::unique_lock<std::mutex> lock(_mutex);
- std::map<int, UserInfo> viewInfo;
- for (const auto& pair : _sessions)
- {
- const auto& session = pair.second;
- const auto viewId = session->getViewId();
- viewInfo[viewId] = UserInfo({session->getViewUserId(), session->getViewUserName()});
- }
-
- // Copy the old sessions to provide disconnected user info.
- viewInfo.insert(_oldSessionIds.begin(), _oldSessionIds.end());
-
- return viewInfo;
+ return _sessionUserInfo;
}
std::mutex& getMutex() override
@@ -1241,6 +1230,7 @@ private:
const int viewId = _loKitDocument->getView();
session->setViewId(viewId);
+ _sessionUserInfo[viewId] = UserInfo({session->getViewUserId(), session->getViewUserName()});
_viewIdToCallbackDescr.emplace(viewId,
std::unique_ptr<CallbackDescriptor>(new CallbackDescriptor({ this, viewId })));
@@ -1287,7 +1277,6 @@ private:
strncmp(data, disconnect.data(), disconnect.size()) == 0)
{
LOG_DBG("Removing ChildSession [" << sessionId << "].");
- _oldSessionIds[session->getViewId()] = UserInfo({session->getViewUserId(), session->getViewUserName()});
_sessions.erase(it);
const auto count = _sessions.size();
LOG_DBG("Have " << count << " child" << (count == 1 ? "" : "ren") <<
@@ -1524,7 +1513,7 @@ private:
std::map<std::string, std::shared_ptr<ChildSession>> _sessions;
/// For showing disconnected user info in the doc repair dialog.
- std::map<int, UserInfo> _oldSessionIds;
+ std::map<int, UserInfo> _sessionUserInfo;
Poco::Thread _callbackThread;
};
More information about the Libreoffice-commits
mailing list