summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDudemanguy <random342@airmail.cc>2024-02-17 10:41:59 -0600
committerDudemanguy <random342@airmail.cc>2024-02-17 18:56:20 +0000
commitbd5b80ba2c9a080574cedd383dcea84f32365f3f (patch)
tree46224baf48d052dd98183bc3ef7da10cff610520
parent85e84f6d9202c8f24def535a6aa78994c0223298 (diff)
downloadmpv-bd5b80ba2c9a080574cedd383dcea84f32365f3f.tar.bz2
mpv-bd5b80ba2c9a080574cedd383dcea84f32365f3f.tar.xz
vo_gpu_next: fix some lut-related memory leaks
-rw-r--r--video/out/vo_gpu_next.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/video/out/vo_gpu_next.c b/video/out/vo_gpu_next.c
index 6f767e8866..2e6d08dcb1 100644
--- a/video/out/vo_gpu_next.c
+++ b/video/out/vo_gpu_next.c
@@ -1752,6 +1752,10 @@ static void uninit(struct vo *vo)
cache_uninit(p, &p->shader_cache);
cache_uninit(p, &p->icc_cache);
+ pl_lut_free(&p->next_opts->image_lut.lut);
+ pl_lut_free(&p->next_opts->lut.lut);
+ pl_lut_free(&p->next_opts->target_lut.lut);
+
pl_icc_close(&p->icc_profile);
pl_renderer_destroy(&p->rr);
@@ -1993,6 +1997,7 @@ static void update_lut(struct priv *p, struct user_lut *lut)
MP_VERBOSE(p, "Loading custom LUT '%s'\n", fname);
struct bstr lutdata = stream_read_file(fname, p, p->global, 100000000); // 100 MB
lut->lut = pl_lut_parse_cube(p->pllog, lutdata.start, lutdata.len);
+ talloc_free(fname);
talloc_free(lutdata.start);
}