Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 69edb8e8 authored by Kyong Hwa Bae's avatar Kyong Hwa Bae Committed by Xu Han
Browse files

msm: camera: sensor: add parameter check



Check input for NULL before using.

Change-Id: Id8cd5aaa88432fabcc8b7f72ee35a94fd20a44c4
Signed-off-by: default avatarKyong Hwa Bae <kbae@codeaurora.org>
Signed-off-by: default avatarXu Han <hanxu@codeaurora.org>
parent 7f8441ae
Loading
Loading
Loading
Loading
+12 −4
Original line number Diff line number Diff line
@@ -998,15 +998,23 @@ static long msm_flash_subdev_do_ioctl(
{
	int32_t i = 0;
	int32_t rc = 0;
	struct video_device *vdev = video_devdata(file);
	struct v4l2_subdev *sd = vdev_to_v4l2_subdev(vdev);
	struct msm_flash_cfg_data_t32 *u32 =
		(struct msm_flash_cfg_data_t32 *)arg;
	struct video_device *vdev;
	struct v4l2_subdev *sd;
	struct msm_flash_cfg_data_t32 *u32;
	struct msm_flash_cfg_data_t flash_data;
	struct msm_flash_init_info_t32 flash_init_info32;
	struct msm_flash_init_info_t flash_init_info;

	CDBG("Enter");

	if (!file || !arg) {
		pr_err("%s:failed NULL parameter\n", __func__);
		return -EINVAL;
	}
	vdev = video_devdata(file);
	sd = vdev_to_v4l2_subdev(vdev);
	u32 = (struct msm_flash_cfg_data_t32 *)arg;

	flash_data.cfg_type = u32->cfg_type;
	for (i = 0; i < MAX_LED_TRIGGERS; i++) {
		flash_data.flash_current[i] = u32->flash_current[i];
+13 −5
Original line number Diff line number Diff line
@@ -538,15 +538,23 @@ static long msm_ois_subdev_do_ioctl(
	struct file *file, unsigned int cmd, void *arg)
{
	long rc = 0;
	struct video_device *vdev = video_devdata(file);
	struct v4l2_subdev *sd = vdev_to_v4l2_subdev(vdev);
	struct msm_ois_cfg_data32 *u32 =
		(struct msm_ois_cfg_data32 *)arg;
	struct video_device *vdev;
	struct v4l2_subdev *sd;
	struct msm_ois_cfg_data32 *u32;
	struct msm_ois_cfg_data ois_data;
	void *parg = arg;
	void *parg;
	struct msm_camera_i2c_seq_reg_setting settings;
	struct msm_camera_i2c_seq_reg_setting32 settings32;

	if (!file || !arg) {
		pr_err("%s:failed NULL parameter\n", __func__);
		return -EINVAL;
	}
	vdev = video_devdata(file);
	sd = vdev_to_v4l2_subdev(vdev);
	u32 = (struct msm_ois_cfg_data32 *)arg;
	parg = arg;

	ois_data.cfgtype = u32->cfgtype;

	switch (cmd) {