diff options
| -rw-r--r-- | drivers/media/platform/msm/ais/sensor/csid/msm_csid.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/media/platform/msm/ais/sensor/csid/msm_csid.c b/drivers/media/platform/msm/ais/sensor/csid/msm_csid.c index b820aa45136a..c62f6227e2be 100644 --- a/drivers/media/platform/msm/ais/sensor/csid/msm_csid.c +++ b/drivers/media/platform/msm/ais/sensor/csid/msm_csid.c @@ -812,8 +812,10 @@ static int32_t msm_csid_cmd(struct csid_device *csid_dev, void *arg) unsigned char cid = csid_params.lut_params.vc_cfg_a[i]. cid; - csid_dev->current_csid_params.lut_params.vc_cfg_a[cid] = - csid_params.lut_params.vc_cfg_a[i]; + if (cid < MAX_CID) + csid_dev->current_csid_params.lut_params. + vc_cfg_a[cid] = csid_params.lut_params. + vc_cfg_a[i]; CDBG("vc_cfg_a[%d] : dt=%d, decode_fmt=%d", csid_params.lut_params.vc_cfg_a[i].cid, @@ -851,8 +853,10 @@ static int32_t msm_csid_cmd(struct csid_device *csid_dev, void *arg) unsigned char cid = csid_params.lut_params.vc_cfg_a[i]. cid; - csid_dev->current_csid_params.lut_params.vc_cfg_a[cid] = - csid_params.lut_params.vc_cfg_a[i]; + if (cid < MAX_CID) + csid_dev->current_csid_params.lut_params. + vc_cfg_a[cid] = csid_params.lut_params. + vc_cfg_a[i]; CDBG("vc_cfg_a[%d] : dt=%d, decode_fmt=%d", csid_params.lut_params.vc_cfg_a[i].cid, |
