diff --git a/apps/tagcache.c b/apps/tagcache.c index 39ed99fcce..efc779d2e3 100644 --- a/apps/tagcache.c +++ b/apps/tagcache.c @@ -4645,6 +4645,10 @@ bool tagcache_is_initialized(void) { return tc_stat.initialized; } +bool tagcache_is_fully_initialized(void) +{ + return tc_stat.readyvalid; +} bool tagcache_is_usable(void) { return tc_stat.initialized && tc_stat.ready; diff --git a/apps/tagcache.h b/apps/tagcache.h index b52da76a0f..19608063c8 100644 --- a/apps/tagcache.h +++ b/apps/tagcache.h @@ -246,6 +246,7 @@ void tagcache_unload_ramcache(void); #endif void tagcache_init(void) INIT_ATTR; bool tagcache_is_initialized(void); +bool tagcache_is_fully_initialized(void); bool tagcache_is_usable(void); void tagcache_start_scan(void); void tagcache_stop_scan(void); diff --git a/apps/tagtree.c b/apps/tagtree.c index 75caab01d4..0e0536c2fd 100644 --- a/apps/tagtree.c +++ b/apps/tagtree.c @@ -652,7 +652,7 @@ static void tagtree_buffer_event(void *data) logf("be:%s", id3->path); - while (! tagcache_is_usable()) + while (! tagcache_is_fully_initialized()) yield(); if (!tagcache_find_index(&tcs, id3->path))