aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-5.4/950-0334-staging-bcm2835-codec-Fix-potential-memory-leak-of-i.patch
blob: 915ca1a29fe982ab986339fa757052dd80d3e6bf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
From 6d59110f7aa7c86caf2c3a29169ace33556f690b Mon Sep 17 00:00:00 2001
From: Dave Stevenson <dave.stevenson@raspberrypi.com>
Date: Wed, 6 Nov 2019 13:58:08 +0000
Subject: [PATCH] staging: bcm2835-codec: Fix potential memory leak of
 isp instance

"d867785 staging: bcm2835-codec: add media controller support" added
a new error path that jumped to end, but didn't add the free
of the ISP device should that path be taken.
Fix this.

Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
---
 .../staging/vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c  | 4 ++++
 1 file changed, 4 insertions(+)

--- a/drivers/staging/vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c
+++ b/drivers/staging/vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c
@@ -2841,6 +2841,10 @@ static int bcm2835_codec_probe(struct pl
 	return 0;
 
 out:
+	if (drv->isp) {
+		bcm2835_codec_destroy(drv->isp);
+		drv->isp = NULL;
+	}
 	if (drv->encode) {
 		bcm2835_codec_destroy(drv->encode);
 		drv->encode = NULL;