logic: fixed project shows up empty after exiting app while indexing previously empty project

This commit is contained in:
mlangkabel
2018-07-02 13:16:30 +02:00
parent 7c09f3339b
commit 0519fd1462
4 changed files with 13 additions and 7 deletions
+10 -6
View File
@@ -277,6 +277,15 @@ void PersistentStorage::setup()
m_sqliteBookmarkStorage.migrateIfNecessary();
}
void PersistentStorage::updateVersion()
{
m_sqliteIndexStorage.setVersion(m_sqliteIndexStorage.getStaticVersion());
if (m_sqliteBookmarkStorage.isEmpty())
{
m_sqliteBookmarkStorage.setVersion(m_sqliteBookmarkStorage.getStaticVersion());
}
}
void PersistentStorage::clear()
{
m_sqliteIndexStorage.clear();
@@ -419,14 +428,9 @@ void PersistentStorage::optimizeMemory()
{
TRACE();
m_sqliteIndexStorage.setVersion(m_sqliteIndexStorage.getStaticVersion());
m_sqliteIndexStorage.setTime();
m_sqliteIndexStorage.optimizeMemory();
if (m_sqliteBookmarkStorage.isEmpty())
{
m_sqliteBookmarkStorage.setVersion(m_sqliteBookmarkStorage.getStaticVersion());
}
m_sqliteBookmarkStorage.optimizeMemory();
}
+1
View File
@@ -55,6 +55,7 @@ public:
void setProjectSettingsText(std::string text);
void setup();
void updateVersion();
void clear();
void clearCaches();
@@ -66,7 +66,7 @@ size_t SqliteStorage::getVersion() const
{
std::string storageVersionStr = getMetaValue("storage_version");
if (storageVersionStr.size())
if (!storageVersionStr.empty())
{
return std::stoi(storageVersionStr);
}
+1
View File
@@ -364,6 +364,7 @@ void Project::buildIndex(const RefreshInfo& info, DialogView* dialogView)
m_storageCache->clear();
m_storage->setProjectSettingsText(TextAccess::createFromFile(getProjectSettingsFilePath())->getText());
m_storage->updateVersion();
std::shared_ptr<IndexerCommandList> indexerCommandList = std::make_shared<IndexerCommandList>();
for (const std::shared_ptr<SourceGroup>& sourceGroup : m_sourceGroups)