summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShailendra Verma <shailendra.v@samsung.com>2016-11-25 07:57:34 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-08-04 10:34:44 +0300
commitcaf13a88a511ecaa474f380b2ef9f9aafb0c4f54 (patch)
treee0e80ca9107399d57248dbb27e83ecf026af2028
parent228b0ef1dfeb337622f3a6e73aa3ae1bebc08312 (diff)
downloadlinux-caf13a88a511ecaa474f380b2ef9f9aafb0c4f54.tar.xz
media: staging: media: davinci_vpfe: - Fix for memory leak if decoder initialization fails.
[ Upstream commit 6995a659101bd4effa41cebb067f9dc18d77520d ] Fix to avoid possible memory leak if the decoder initialization got failed.Free the allocated memory for file handle object before return in case decoder initialization fails. Signed-off-by: Shailendra Verma <shailendra.v@samsung.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/staging/media/davinci_vpfe/vpfe_video.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/staging/media/davinci_vpfe/vpfe_video.c b/drivers/staging/media/davinci_vpfe/vpfe_video.c
index 0fdff91624fd..43474f562b43 100644
--- a/drivers/staging/media/davinci_vpfe/vpfe_video.c
+++ b/drivers/staging/media/davinci_vpfe/vpfe_video.c
@@ -406,6 +406,9 @@ static int vpfe_open(struct file *file)
/* If decoder is not initialized. initialize it */
if (!video->initialized && vpfe_update_pipe_state(video)) {
mutex_unlock(&video->lock);
+ v4l2_fh_del(&handle->vfh);
+ v4l2_fh_exit(&handle->vfh);
+ kfree(handle);
return -ENODEV;
}
/* Increment device users counter */