GH-853 evict asset index files from cache when they don't parse
This commit is contained in:
@ -135,6 +135,17 @@ bool HttpMetaCache::updateEntry(MetaEntryPtr stale_entry)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool HttpMetaCache::evictEntry(MetaEntryPtr entry)
|
||||
{
|
||||
if(entry)
|
||||
{
|
||||
entry->stale = true;
|
||||
SaveEventually();
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
MetaEntryPtr HttpMetaCache::staleEntry(QString base, QString resource_path)
|
||||
{
|
||||
auto foo = new MetaEntry;
|
||||
@ -228,6 +239,11 @@ void HttpMetaCache::SaveNow()
|
||||
{
|
||||
for (auto entry : group.entry_list)
|
||||
{
|
||||
// do not save stale entries. they are dead.
|
||||
if(entry->stale)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
QJsonObject entryObj;
|
||||
entryObj.insert("base", QJsonValue(entry->base));
|
||||
entryObj.insert("path", QJsonValue(entry->path));
|
||||
|
@ -51,6 +51,9 @@ public:
|
||||
// add a previously resolved stale entry
|
||||
bool updateEntry(MetaEntryPtr stale_entry);
|
||||
|
||||
// evict selected entry from cache
|
||||
bool evictEntry(MetaEntryPtr entry);
|
||||
|
||||
void addBase(QString base, QString base_root);
|
||||
|
||||
// (re)start a timer that calls SaveNow later.
|
||||
|
Reference in New Issue
Block a user