From fee6847aa7dfea721ef217824100eebfd0d7aa26 Mon Sep 17 00:00:00 2001 From: repojohnray <8113421+repojohnray@users.noreply.github.com> Date: Tue, 3 Jan 2023 01:14:01 +0100 Subject: [PATCH] vo: hwdec: fix drmGetDeviceNameFromFd2() related memory leak This commit fixes a minor memory leak related to drmGetDeviceNameFromFd2(). This function returns a string allocated with strdup(). --- video/out/hwdec/hwdec_drmprime_overlay.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/video/out/hwdec/hwdec_drmprime_overlay.c b/video/out/hwdec/hwdec_drmprime_overlay.c index bda6c6bdc1..7e3c0b276d 100644 --- a/video/out/hwdec/hwdec_drmprime_overlay.c +++ b/video/out/hwdec/hwdec_drmprime_overlay.c @@ -299,10 +299,14 @@ static int init(struct ra_hwdec *hw) .driver_name = hw->driver->name, .hw_imgfmt = IMGFMT_DRMPRIME, }; + + char *device = drmGetDeviceNameFromFd2(p->ctx->fd); if (!av_hwdevice_ctx_create(&p->hwctx.av_device_ref, AV_HWDEVICE_TYPE_DRM, - drmGetDeviceNameFromFd2(p->ctx->fd), NULL, 0)) { + device, NULL, 0)) { hwdec_devices_add(hw->devs, &p->hwctx); } + if (device) + free(device); return 0;