loolwsd/TileCache.cpp | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-)
New commits: commit 06d2caa09855b383205584aec0d749c99c064707 Author: Ashod Nakashian <[email protected]> Date: Sat Mar 26 09:16:23 2016 -0400 loolwsd: TileCache logging and efficient filename generator Change-Id: Id5c524f8a3d1b7ee285b620769e3378e73148138 Reviewed-on: https://gerrit.libreoffice.org/23538 Reviewed-by: Ashod Nakashian <[email protected]> Tested-by: Ashod Nakashian <[email protected]> diff --git a/loolwsd/TileCache.cpp b/loolwsd/TileCache.cpp index 485ca2d..58d0900 100644 --- a/loolwsd/TileCache.cpp +++ b/loolwsd/TileCache.cpp @@ -74,6 +74,7 @@ std::unique_ptr<std::fstream> TileCache::lookupTile(int part, int width, int hei if (dir.exists() && dir.isDirectory() && File(fileName).exists()) { + Log::debug("Found editing tile: " + cachedName); std::unique_ptr<std::fstream> result(new std::fstream(fileName, std::ios::in)); return result; } @@ -82,6 +83,7 @@ std::unique_ptr<std::fstream> TileCache::lookupTile(int part, int width, int hei // skip tiles scheduled for removal from the Persistent cache (on save) if (_toBeRemoved.find(cachedName) != _toBeRemoved.end()) { + Log::trace("Perishable tile not used: " + cachedName); return nullptr; } @@ -94,6 +96,7 @@ std::unique_ptr<std::fstream> TileCache::lookupTile(int part, int width, int hei } const std::string fileName = _persCacheDir + "/" + cachedName; + Log::debug("Found persistent tile: " + fileName); std::unique_ptr<std::fstream> result(new std::fstream(fileName, std::ios::in)); return result; @@ -107,10 +110,12 @@ void TileCache::saveTile(int part, int width, int height, int tilePosX, int tile } const std::string dirName = cacheDirName(_hasUnsavedChanges); - File(dirName).createDirectories(); const std::string fileName = dirName + "/" + cacheFileName(part, width, height, tilePosX, tilePosY, tileWidth, tileHeight); + Log::debug() << "Saving " + << (_hasUnsavedChanges ? "editing" : "persistent") << + " tile: " << fileName << Log::end; std::fstream outStream(fileName, std::ios::out); outStream.write(data, size); @@ -161,6 +166,8 @@ std::string TileCache::getTextFile(std::string fileName) void TileCache::documentSaved() { + Log::debug("Persisting editing tiles."); + // first remove the invalidated tiles from the Persistent cache for (const auto& it : _toBeRemoved) { @@ -313,10 +320,11 @@ std::string TileCache::cacheDirName(const bool useEditingCache) std::string TileCache::cacheFileName(int part, int width, int height, int tilePosX, int tilePosY, int tileWidth, int tileHeight) { - return (std::to_string(part) + "_" + - std::to_string(width) + "x" + std::to_string(height) + "." + - std::to_string(tilePosX) + "," + std::to_string(tilePosY) + "." + - std::to_string(tileWidth) + "x" + std::to_string(tileHeight) + ".png"); + std::ostringstream oss; + oss << part << '_' << width << 'x' << height << '.' + << tilePosX << ',' << tilePosY << '.' + << tileWidth << 'x' << tileHeight << ".png"; + return oss.str(); } bool TileCache::parseCacheFileName(const std::string& fileName, int& part, int& width, int& height, int& tilePosX, int& tilePosY, int& tileWidth, int& tileHeight) _______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
