synaptics: Fix problem after match is failed

This fixes the the problem that the sensor becomes unresponsive after
pressing the wrong fingerprint. We fix the problem by making sure that
the non-match report is delayed until the finger is removed. With this
we cannot run into the situation that the next match request fails
immediately as the finger is still present.

Fixes: #208
This commit is contained in:
Vincent Huang 2019-12-09 14:12:54 +08:00 committed by Benjamin Berg
parent bb0ef04b85
commit 107fdfde32

View file

@ -168,7 +168,7 @@ cmd_recieve_cb (FpiUsbTransfer *transfer,
* depending on resp.complete. */
if (self->cmd_pending_transfer)
fpi_ssm_jump_to_state (transfer->ssm, SYNAPTICS_CMD_SEND_PENDING);
else if (!resp.complete)
else if (!resp.complete || self->cmd_complete_on_removal)
fpi_ssm_next_state (transfer->ssm); /* SYNAPTICS_CMD_WAIT_INTERRUPT */
else
fpi_ssm_mark_completed (transfer->ssm);