loolwsd/LOOLKit.cpp | 4 ++-- loolwsd/LOOLWSD.cpp | 26 +++++++++++++------------- 2 files changed, 15 insertions(+), 15 deletions(-)
New commits: commit f577e48f18c01616269159c839b25beda9a4355f Author: Ashod Nakashian <ashod.nakash...@collabora.co.uk> Date: Sun Jan 10 10:35:28 2016 -0500 loolwsd: child Session ID in URI Change-Id: Ide04425fe29d17dd2db1aea532de421b8f0e3669 Reviewed-on: https://gerrit.libreoffice.org/21329 Reviewed-by: Ashod Nakashian <ashnak...@gmail.com> Tested-by: Ashod Nakashian <ashnak...@gmail.com> diff --git a/loolwsd/LOOLKit.cpp b/loolwsd/LOOLKit.cpp index 7e2f8ad..4750d08 100644 --- a/loolwsd/LOOLKit.cpp +++ b/loolwsd/LOOLKit.cpp @@ -362,7 +362,7 @@ public: void run() override { - static const std::string thread_name = "kit_socket_" + _sessionId; + static const std::string thread_name = "kit_ws_" + _sessionId; #ifdef __linux if (prctl(PR_SET_NAME, reinterpret_cast<unsigned long>(thread_name.c_str()), 0, 0, 0) != 0) Log::error("Cannot set thread name to " + thread_name + "."); @@ -376,7 +376,7 @@ public: HTTPClientSession cs("127.0.0.1", MASTER_PORT_NUMBER); cs.setTimeout(0); - HTTPRequest request(HTTPRequest::HTTP_GET, CHILD_URI); + HTTPRequest request(HTTPRequest::HTTP_GET, CHILD_URI + _sessionId); HTTPResponse response; _ws = std::make_shared<WebSocket>(cs, request, response); diff --git a/loolwsd/LOOLWSD.cpp b/loolwsd/LOOLWSD.cpp index 71e9915..51bd75c 100644 --- a/loolwsd/LOOLWSD.cpp +++ b/loolwsd/LOOLWSD.cpp @@ -308,7 +308,8 @@ public: void handleRequest(HTTPServerRequest& request, HTTPServerResponse& response) override { - const std::string thread_name = "client_socket"; + const auto id = LOOLWSD::GenSessionId(); + const std::string thread_name = "client_ws_" + id; #ifdef __linux if (prctl(PR_SET_NAME, reinterpret_cast<unsigned long>(thread_name.c_str()), 0, 0, 0) != 0) @@ -333,7 +334,6 @@ public: // Load the document. std::shared_ptr<WebSocket> ws; const LOOLSession::Kind kind = LOOLSession::Kind::ToClient; - const auto id = LOOLWSD::GenSessionId(); auto session = std::make_shared<MasterProcessSession>(id, kind, ws); const std::string filePrefix("file://"); const std::string load = "load url=" + filePrefix + fromPath; @@ -430,8 +430,6 @@ public: try { auto ws = std::make_shared<WebSocket>(request, response); - - const std::string id = LOOLWSD::GenSessionId(); auto session = std::make_shared<MasterProcessSession>(id, LOOLSession::Kind::ToClient, ws); // For ToClient sessions, we store incoming messages in a queue and have a separate @@ -493,21 +491,23 @@ public: void handleRequest(HTTPServerRequest& request, HTTPServerResponse& response) override { assert(request.serverAddress().port() == MASTER_PORT_NUMBER); - assert(request.getURI() == LOOLWSD::CHILD_URI); + assert(request.getURI().find(LOOLWSD::CHILD_URI) == 0); - const std::string thread_name = "prison_socket"; + std::string thread_name = "prison_ws_"; + try + { + const auto index = request.getURI().find_last_of('/'); + const auto id = request.getURI().substr(index + 1); + + thread_name += id; #ifdef __linux - if (prctl(PR_SET_NAME, reinterpret_cast<unsigned long>(thread_name.c_str()), 0, 0, 0) != 0) - Log::error("Cannot set thread name to " + thread_name + "."); + if (prctl(PR_SET_NAME, reinterpret_cast<unsigned long>(thread_name.c_str()), 0, 0, 0) != 0) + Log::error("Cannot set thread name to " + thread_name + "."); #endif - Log::debug("Thread [" + thread_name + "] started."); + Log::debug("Thread [" + thread_name + "] started."); - try - { auto ws = std::make_shared<WebSocket>(request, response); - - const std::string id; auto session = std::make_shared<MasterProcessSession>(id, LOOLSession::Kind::ToPrisoner, ws); SocketProcessor(ws, response, [&session](const char* data, const int size, bool) _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits