diff options
author | Christian Soffke <christian.soffke@gmail.com> | 2021-12-13 00:07:39 +0100 |
---|---|---|
committer | Aidan MacDonald <amachronic@protonmail.com> | 2022-05-22 06:55:58 -0400 |
commit | 5146c3043fa559eab454a7c71f7045e2e016f2e7 (patch) | |
tree | e750c72f9040b581dd9bcaa1e0346e2b3d52da44 | |
parent | c116db6065d7b3c592cfca34fe30986f60fccc76 (diff) | |
download | rockbox-5146c3043f.tar.gz rockbox-5146c3043f.zip |
pictureflow: Fix concurrency issues building art cache
Guards against possible image corruption
Change-Id: Id7e1e3a09cb13c255eea0ffdd2e4c4d558086997
-rw-r--r-- | apps/plugins/pictureflow/pictureflow.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/apps/plugins/pictureflow/pictureflow.c b/apps/plugins/pictureflow/pictureflow.c index a2782b6a2b..65efed72c7 100644 --- a/apps/plugins/pictureflow/pictureflow.c +++ b/apps/plugins/pictureflow/pictureflow.c @@ -4416,7 +4416,12 @@ static int pictureflow_main(const char* selected_file) break; case pf_idle: render_all_slides(); - incremental_albumart_cache(false); + if (aa_cache.inspected < pf_idx.album_ct) + { + buf_ctx_lock(); + incremental_albumart_cache(false); + buf_ctx_unlock(); + } break; } |