Messages in this thread Patch in this message | | | From | Colin King <> | Subject | [PATCH][next] media: stv090x: fix double free on state object | Date | Tue, 11 Jun 2019 16:38:12 +0100 |
| |
From: Colin Ian King <colin.king@canonical.com>
There two callers of stv090x_setup_compound manage the allocation and freeing if state there is an error condition from stv090x_setup_compound. Currently function stv090x_setup_compound also frees the state object too, leading to a double free in the callers of this function. Fix this by removing the extraneous free in stv090x_setup_compound and just leave the callers handle the allocation/free'ing.
Addresses-Coverity: ("Double free") Fixes: eb5005df886b ("media: stv090x: Implement probe/remove for stv090x") Signed-off-by: Colin Ian King <colin.king@canonical.com> --- drivers/media/dvb-frontends/stv090x.c | 1 - 1 file changed, 1 deletion(-)
diff --git a/drivers/media/dvb-frontends/stv090x.c b/drivers/media/dvb-frontends/stv090x.c index 986e585e0103..90d24131d335 100644 --- a/drivers/media/dvb-frontends/stv090x.c +++ b/drivers/media/dvb-frontends/stv090x.c @@ -4942,7 +4942,6 @@ static int stv090x_setup_compound(struct stv090x_state *state) return 0; error: - kfree(state); return -ENOMEM; err_remove: remove_dev(state->internal); -- 2.20.1
| |