X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=futatabi%2Fjpeg_frame_view.cpp;h=1924a543ff017346930f0c2d8c605253555e5728;hb=b44bf7cfce6a5aaffbcd1e37df39068a163438ad;hp=2f43517894a1fcedcf06faef6b1854797ddbdb51;hpb=20ea8ae661b78d88f360b8f582d2576c9c1def4d;p=nageru
diff --git a/futatabi/jpeg_frame_view.cpp b/futatabi/jpeg_frame_view.cpp
index 2f43517..1924a54 100644
--- a/futatabi/jpeg_frame_view.cpp
+++ b/futatabi/jpeg_frame_view.cpp
@@ -236,7 +236,7 @@ shared_ptr decode_jpeg_with_cache(FrameOnDisk frame_spec, CacheMissBehavi
{
*did_decode = false;
{
- unique_lock lock(cache_mu);
+ lock_guard lock(cache_mu);
auto it = cache.find(frame_spec);
if (it != cache.end()) {
++metric_jpeg_cache_hit_frames;
@@ -255,7 +255,7 @@ shared_ptr decode_jpeg_with_cache(FrameOnDisk frame_spec, CacheMissBehavi
*did_decode = true;
shared_ptr frame = decode_jpeg(frame_reader->read_frame(frame_spec));
- unique_lock lock(cache_mu);
+ lock_guard lock(cache_mu);
cache_bytes_used += frame_size(*frame);
metric_jpeg_cache_used_bytes = cache_bytes_used;
cache[frame_spec] = LRUFrame{ frame, event_counter++ };
@@ -368,7 +368,7 @@ void JPEGFrameView::setFrame(unsigned stream_idx, FrameOnDisk frame, FrameOnDisk
{
current_stream_idx = stream_idx; // TODO: Does this interact with fades?
- unique_lock lock(cache_mu);
+ lock_guard lock(cache_mu);
PendingDecode decode;
decode.primary = frame;
decode.secondary = secondary_frame;
@@ -380,7 +380,7 @@ void JPEGFrameView::setFrame(unsigned stream_idx, FrameOnDisk frame, FrameOnDisk
void JPEGFrameView::setFrame(shared_ptr frame)
{
- unique_lock lock(cache_mu);
+ lock_guard lock(cache_mu);
PendingDecode decode;
decode.frame = std::move(frame);
decode.destination = this;