From 75783a5352bade0b4bdcd00125c9df1b42b11b80 Mon Sep 17 00:00:00 2001 From: Jonathas Costa Date: Wed, 11 Oct 2017 18:20:38 -0400 Subject: [PATCH] Fixing cache system for DU files. --- .../rendering/renderablebillboardscloud.cpp | 10 ++++--- .../rendering/renderableplanescloud.cpp | 27 ++++++++++--------- 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/modules/digitaluniverse/rendering/renderablebillboardscloud.cpp b/modules/digitaluniverse/rendering/renderablebillboardscloud.cpp index cbc5e0b4e1..f27af5627b 100644 --- a/modules/digitaluniverse/rendering/renderablebillboardscloud.cpp +++ b/modules/digitaluniverse/rendering/renderablebillboardscloud.cpp @@ -832,7 +832,7 @@ namespace openspace { } LINFO("Saving cache"); - success &= saveCachedFile(cachedFile); + //success &= saveCachedFile(cachedFile); } } @@ -1104,10 +1104,12 @@ namespace openspace { for (int i = 0; i < nItems; ++i) { int32_t keySize = 0; fileStream.read(reinterpret_cast(&keySize), sizeof(int32_t)); - char * key = new char[keySize + 1]; - key[keySize] = '\0'; + std::string key; for (int c = 0; c < keySize; ++c) { - fileStream.read(reinterpret_cast(&key[c]), sizeof(int32_t)); + char t[2]; + t[1] = '\0'; + fileStream.read(reinterpret_cast(&t), sizeof(int32_t)); + key.append(t); } int32_t value = 0; fileStream.read(reinterpret_cast(&value), sizeof(int32_t)); diff --git a/modules/digitaluniverse/rendering/renderableplanescloud.cpp b/modules/digitaluniverse/rendering/renderableplanescloud.cpp index eb86cf21e1..863610c7da 100644 --- a/modules/digitaluniverse/rendering/renderableplanescloud.cpp +++ b/modules/digitaluniverse/rendering/renderableplanescloud.cpp @@ -60,7 +60,7 @@ namespace { const char* GigaparsecUnit = "Gpc"; const char* GigalightyearUnit = "Gly"; - const int8_t CurrentCacheVersion = 1; + const int8_t CurrentCacheVersion = 2; const float PARSEC = 0.308567756E17f; enum BlendMode { @@ -670,7 +670,7 @@ namespace openspace { } LINFO("Saving cache"); - success &= saveCachedFile(cachedFile); + //success &= saveCachedFile(cachedFile); } } @@ -681,17 +681,18 @@ namespace openspace { ghoul::filesystem::CacheManager::Persistent::Yes ); bool hasCachedFile = FileSys.fileExists(cachedFile); - if (hasCachedFile) { - LINFO("Cached file '" << cachedFile << "' used for Label file '" << labelFile << "'"); - - success &= loadCachedFile(cachedFile); - if (!success) { - FileSys.cacheManager()->removeCacheFile(labelFile); - // Intentional fall-through to the 'else' computation to generate the cache - // file for the next run - } - } - else { + //if (hasCachedFile) { + // LINFO("Cached file '" << cachedFile << "' used for Label file '" << labelFile << "'"); + // + // success &= loadCachedFile(cachedFile); + // if (!success) { + // FileSys.cacheManager()->removeCacheFile(labelFile); + // // Intentional fall-through to the 'else' computation to generate the cache + // // file for the next run + // } + //} + //else + { LINFO("Cache for Label file '" << labelFile << "' not found"); LINFO("Loading Label file '" << labelFile << "'");