refs #626 Serializer gets its baseline values when it actually starts loading/saving, instead of just when the cache requests the load/save.

This commit is contained in:
Mathew Sutcliffe
2016-03-31 19:57:20 +01:00
parent 363ee7c54b
commit 91db47c628

View File

@@ -140,19 +140,17 @@ namespace BlackMisc
void CDataCache::saveToStoreAsync(const BlackMisc::CValueCachePacket &values)
{
auto baseline = getAllValuesWithTimestamps();
QTimer::singleShot(0, &m_serializer, [this, baseline, values]
QTimer::singleShot(0, &m_serializer, [this, values]
{
m_serializer.saveToStore(values.toVariantMap(), baseline);
m_serializer.saveToStore(values.toVariantMap(), getAllValuesWithTimestamps());
});
}
void CDataCache::loadFromStoreAsync()
{
auto baseline = getAllValuesWithTimestamps();
QTimer::singleShot(0, &m_serializer, [this, baseline]
QTimer::singleShot(0, &m_serializer, [this]
{
m_serializer.loadFromStore(baseline);
m_serializer.loadFromStore(getAllValuesWithTimestamps());
});
}