Prioritize replacement of published legacy cache objects
This commit is contained in:
+2
-2
@@ -29,7 +29,7 @@
|
|||||||
|
|
||||||
/* A single-writer, atomic Jellyfin compatibility cache. */
|
/* A single-writer, atomic Jellyfin compatibility cache. */
|
||||||
|
|
||||||
#define VERSION "2.0.0"
|
#define VERSION "2.0.1"
|
||||||
#define HASH_HEX 32
|
#define HASH_HEX 32
|
||||||
#define AUDIO_BITRATE "192k"
|
#define AUDIO_BITRATE "192k"
|
||||||
#define HASH_CHUNK (4U * 1024U * 1024U)
|
#define HASH_CHUNK (4U * 1024U * 1024U)
|
||||||
@@ -1092,7 +1092,7 @@ static struct item *candidate(struct manager *m)
|
|||||||
if (item->cache || !needs_cache || locked(m, item->relative) ||
|
if (item->cache || !needs_cache || locked(m, item->relative) ||
|
||||||
timer_get(&m->retries, item->relative) > time) continue;
|
timer_get(&m->retries, item->relative) > time) continue;
|
||||||
double priority = timer_get(&m->priorities, item->relative);
|
double priority = timer_get(&m->priorities, item->relative);
|
||||||
bool preferred = priority > 0; double order = preferred ? priority : item->mtime;
|
bool preferred = item->fallback || priority > 0; double order = priority > 0 ? priority : item->mtime;
|
||||||
if (!best || preferred > best_priority || (preferred == best_priority && order > best_order)) {
|
if (!best || preferred > best_priority || (preferred == best_priority && order > best_order)) {
|
||||||
best = item; best_priority = preferred; best_order = order;
|
best = item; best_priority = preferred; best_order = order;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user