loleaflet/spec/tilebench/TileBenchSpec.js | 2 ++ loolwsd/ChildProcessSession.cpp | 11 ++++++++++- loolwsd/MasterProcessSession.cpp | 14 +++++++++++++- loolwsd/protocol.txt | 5 +++++ 4 files changed, 30 insertions(+), 2 deletions(-)
New commits: commit 5332e3f48c36955d6bbf53272dc645aaeae09a20 Author: Pranav Kant <pran...@collabora.com> Date: Fri Feb 19 00:08:07 2016 +0530 loleaflet: Make tile benchmark test work again This broke after we introduced 'tilecombine' message. Change-Id: Id273a859b22cac6b50ba759241d0b36d27829700 diff --git a/loleaflet/spec/tilebench/TileBenchSpec.js b/loleaflet/spec/tilebench/TileBenchSpec.js index 87874e8..4d3077b 100644 --- a/loleaflet/spec/tilebench/TileBenchSpec.js +++ b/loleaflet/spec/tilebench/TileBenchSpec.js @@ -117,6 +117,7 @@ describe('TileBench', function () { incoming.push(logs[i]); } else if (logs[i].direction === L.OUTGOING) { + logs[i].msg = logs[i].msg.replace('tilecombine','tile'); outgoing.push(logs[i]); } } @@ -126,6 +127,7 @@ describe('TileBench', function () { for (j = 0; j < incoming.length; j++) { if (outgoing[i].msg === incoming[j].msg) { time_deltas.push(incoming[j].time - outgoing[i].time); + break; } } } commit 9cf0cbf3a68f8717eed5c2dda882f92a2879fc36 Author: Pranav Kant <pran...@collabora.com> Date: Fri Feb 19 00:00:33 2016 +0530 loolwsd: Allow sending 'tilecombine' messages with 'timestamp' ... and revert back with this parameter in 'tile:' response messages so that client can identify the response. This is also required to make client-side tile benchmarking tests work again. Change-Id: I307aabf622b17f4dce727d1faf3c83eb566ba905 diff --git a/loolwsd/ChildProcessSession.cpp b/loolwsd/ChildProcessSession.cpp index b32d4c5..6102a16 100644 --- a/loolwsd/ChildProcessSession.cpp +++ b/loolwsd/ChildProcessSession.cpp @@ -773,6 +773,7 @@ void ChildProcessSession::sendCombinedTiles(const char* /*buffer*/, int /*length { int part, pixelWidth, pixelHeight, tileWidth, tileHeight; std::string tilePositionsX, tilePositionsY; + std::string reqTimestamp; if (tokens.count() < 8 || !getTokenInteger(tokens[1], "part", part) || @@ -795,6 +796,9 @@ void ChildProcessSession::sendCombinedTiles(const char* /*buffer*/, int /*length return; } + if (tokens.count() > 8) + getTokenString(tokens[8], "timestamp", reqTimestamp); + Util::Rectangle renderArea; StringTokenizer positionXtokens(tilePositionsX, ",", StringTokenizer::TOK_IGNORE_EMPTY | StringTokenizer::TOK_TRIM); @@ -874,7 +878,12 @@ void ChildProcessSession::sendCombinedTiles(const char* /*buffer*/, int /*length " tileposx=" + std::to_string(tileRect.getLeft()) + " tileposy=" + std::to_string(tileRect.getTop()) + " tilewidth=" + std::to_string(tileWidth) + - " tileheight=" + std::to_string(tileHeight) + "\n"; + " tileheight=" + std::to_string(tileHeight); + + if (reqTimestamp != "") + response += " timestamp=" + reqTimestamp; + + response += "\n"; std::vector<char> output; output.reserve(pixelWidth * pixelHeight * 4 + response.size()); diff --git a/loolwsd/MasterProcessSession.cpp b/loolwsd/MasterProcessSession.cpp index b7b4275..de04450 100644 --- a/loolwsd/MasterProcessSession.cpp +++ b/loolwsd/MasterProcessSession.cpp @@ -605,6 +605,7 @@ void MasterProcessSession::sendCombinedTiles(const char* /*buffer*/, int /*lengt { int part, pixelWidth, pixelHeight, tileWidth, tileHeight; std::string tilePositionsX, tilePositionsY; + std::string reqTimestamp; if (tokens.count() < 8 || !getTokenInteger(tokens[1], "part", part) || @@ -627,6 +628,9 @@ void MasterProcessSession::sendCombinedTiles(const char* /*buffer*/, int /*lengt return; } + if (tokens.count() > 8) + getTokenString(tokens[8], "timestamp", reqTimestamp); + Util::Rectangle renderArea; StringTokenizer positionXtokens(tilePositionsX, ",", StringTokenizer::TOK_IGNORE_EMPTY | StringTokenizer::TOK_TRIM); @@ -669,7 +673,12 @@ void MasterProcessSession::sendCombinedTiles(const char* /*buffer*/, int /*lengt " tileposx=" + std::to_string(x) + " tileposy=" + std::to_string(y) + " tilewidth=" + std::to_string(tileWidth) + - " tileheight=" + std::to_string(tileHeight) + "\n"; + " tileheight=" + std::to_string(tileHeight); + + if (reqTimestamp != "") + response += " timestamp=" + reqTimestamp; + + response += "\n"; std::vector<char> output; output.reserve(4 * pixelWidth * pixelHeight); @@ -711,6 +720,9 @@ void MasterProcessSession::sendCombinedTiles(const char* /*buffer*/, int /*lengt " tilewidth=" + std::to_string(tileWidth) + " tileheight=" + std::to_string(tileHeight); + if (reqTimestamp != "") + forward += " timestamp=" + reqTimestamp; + forwardToPeer(forward.c_str(), forward.size()); } commit cabb9d7fc33aa5772b48a8ec14c7441b3470bd87 Author: Pranav Kant <pran...@collabora.com> Date: Thu Feb 18 23:55:30 2016 +0530 loolwsd: Add a missing command, 'tilecombine' to documentation Change-Id: Iedefef83cefca6e88e9676a0bc810ecb766b59ee diff --git a/loolwsd/protocol.txt b/loolwsd/protocol.txt index afef2af..3b35bde 100644 --- a/loolwsd/protocol.txt +++ b/loolwsd/protocol.txt @@ -114,6 +114,11 @@ tile part=<partNumber> width=<width> height=<height> tileposx=<xpos> tileposy=<y All parameters are numbers. +tilecombine <parameters> + + Accept same parameters as 'tile' message except parameters 'tileposx' and 'tileposy' + can be a comma separated list, and number of elements in both must be same. + unload [save|force] unloads the document. _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits