summaryrefslogtreecommitdiffstats
path: root/video/out
diff options
context:
space:
mode:
Diffstat (limited to 'video/out')
-rw-r--r--video/out/vo_gpu_next.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/video/out/vo_gpu_next.c b/video/out/vo_gpu_next.c
index 4ed33a8a55..39321871eb 100644
--- a/video/out/vo_gpu_next.c
+++ b/video/out/vo_gpu_next.c
@@ -159,17 +159,18 @@ static void update_lut(struct priv *p, struct user_lut *lut);
static pl_buf get_dr_buf(struct priv *p, const uint8_t *ptr)
{
- pl_buf buf = NULL;
pthread_mutex_lock(&p->dr_lock);
for (int i = 0; i < p->num_dr_buffers; i++) {
- buf = p->dr_buffers[i];
- if (ptr >= buf->data && ptr < buf->data + buf->params.size)
- break;
+ pl_buf buf = p->dr_buffers[i];
+ if (ptr >= buf->data && ptr < buf->data + buf->params.size) {
+ pthread_mutex_unlock(&p->dr_lock);
+ return buf;
+ }
}
pthread_mutex_unlock(&p->dr_lock);
- return buf;
+ return NULL;
}
static void free_dr_buf(void *opaque, uint8_t *data)