diff options
| author | Abdun Nihaal <nihaal@cse.iitm.ac.in> | 2025-12-23 11:19:01 +0530 |
|---|---|---|
| committer | Sasha Levin <sashal@kernel.org> | 2026-03-04 07:20:44 -0500 |
| commit | 0c33338514d8246280533a77091e6b6ee548c606 (patch) | |
| tree | 40ffdf77b53c3de432b68be7c93f831d2982d067 /drivers | |
| parent | 92537a15780b6d0281fd8286f93fbc3652e35f48 (diff) | |
media: i2c/tw9906: Fix potential memory leak in tw9906_probe()
[ Upstream commit cad237b6c875fbee5d353a2b289e98d240d17ec8 ]
In one of the error paths in tw9906_probe(), the memory allocated in
v4l2_ctrl_handler_init() and v4l2_ctrl_new_std() is not freed. Fix that
by calling v4l2_ctrl_handler_free() on the handler in that error path.
Cc: stable@vger.kernel.org
Fixes: a000e9a02b58 ("[media] tw9906: add Techwell tw9906 video decoder")
Signed-off-by: Abdun Nihaal <nihaal@cse.iitm.ac.in>
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/media/i2c/tw9906.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/media/i2c/tw9906.c b/drivers/media/i2c/tw9906.c index 549ad8f72f12..0342d6e8b49c 100644 --- a/drivers/media/i2c/tw9906.c +++ b/drivers/media/i2c/tw9906.c @@ -197,6 +197,7 @@ static int tw9906_probe(struct i2c_client *client, if (write_regs(sd, initial_registers) < 0) { v4l2_err(client, "error initializing TW9906\n"); + v4l2_ctrl_handler_free(hdl); return -EINVAL; } |
