summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKacper Michajłow <kasper93@gmail.com>2024-05-07 13:15:36 +0200
committerKacper Michajłow <kasper93@gmail.com>2024-05-07 21:05:18 +0200
commit43b702d707ed08e5e031e4d4af980e67a855afa7 (patch)
tree13a1132b0bcd0411daabdc38c5806fb1b239d55a
parentd1e55a0e877ec1ae5733f4a4e692a7a8a0a7439b (diff)
downloadmpv-43b702d707ed08e5e031e4d4af980e67a855afa7.tar.bz2
mpv-43b702d707ed08e5e031e4d4af980e67a855afa7.tar.xz
drm_prime: remove off by one when allocating new ref counter
-rw-r--r--video/out/drm_prime.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/video/out/drm_prime.c b/video/out/drm_prime.c
index 2e369b5268..581eb717bb 100644
--- a/video/out/drm_prime.c
+++ b/video/out/drm_prime.c
@@ -130,10 +130,9 @@ void drm_prime_add_handle_ref(struct drm_prime_handle_refs *handle_refs,
if (handle) {
if (handle > handle_refs->size) {
MP_TARRAY_GROW(handle_refs->ctx, handle_refs->handle_ref_count,
- handle);
- memset(&handle_refs->handle_ref_count[handle_refs->size + 1], 0,
- (handle - handle_refs->size)
- * sizeof(handle_refs->handle_ref_count[0]));
+ handle - 1);
+ uint32_t *p = handle_refs->handle_ref_count;
+ memset(&p[handle_refs->size], 0, (handle - handle_refs->size) * sizeof(p[0]));
handle_refs->size = handle;
}
handle_refs->handle_ref_count[handle - 1]++;