msm: actuator: Add protection condition for move focus

Neighbour index of step table possibly have same position,
so i2c operation reported invalid size parameters.
we add protection condition to return success value.

Change-Id: I7dab8f44a99c7c3c7d6996c8decb8bcd09c246c9
Signed-off-by: penliu <pengfeiliu@codeaurora.org>
This commit is contained in:
Pengfei Liu 2017-06-29 11:40:24 +08:00 committed by Gerrit - the friendly Code Review server
parent c1a5075d60
commit ca0c16ad01

View file

@ -573,7 +573,10 @@ static int32_t msm_actuator_move_focus(
CDBG("called, dir %d, num_steps %d\n", dir, num_steps);
if (dest_step_pos == a_ctrl->curr_step_pos)
if ((dest_step_pos == a_ctrl->curr_step_pos) ||
((dest_step_pos <= a_ctrl->total_steps) &&
(a_ctrl->step_position_table[dest_step_pos] ==
a_ctrl->step_position_table[a_ctrl->curr_step_pos])))
return rc;
if ((sign_dir > MSM_ACTUATOR_MOVE_SIGNED_NEAR) ||