mirror of
https://github.com/team-infusion-developers/android_hardware_samsung.git
synced 2024-11-06 21:55:41 +00:00
fingerprint: send cancel-message to system
Android expects a FINGERPRINT_ERROR_CANCELED error-message if a fingerprint authentication-requested was cancelled. As bauth doesn't deliver such a message on its own, we use the already notify-wrapper to send a message to Android if the authentication was cancelled by bauth to allow a proper operation of the fingerprint-service. Some devices (hero, hero2) with the fingerprint scanner embedded in the home button need this for the "config_fingerprintWakeAndUnlock" option to work reliably. Change-Id: Id5ec866a7608885925687a1927e0e6085e9b6cff Ref: BUGBASH-1422
This commit is contained in:
parent
5869cd357e
commit
b0b7834861
1 changed files with 14 additions and 1 deletions
|
@ -19,6 +19,7 @@
|
|||
#include <dlfcn.h>
|
||||
#include <stdlib.h>
|
||||
#include <errno.h>
|
||||
#include <string.h>
|
||||
|
||||
#include <cutils/log.h>
|
||||
|
||||
|
@ -122,7 +123,19 @@ static uint64_t fingerprint_get_auth_id(struct fingerprint_device __unused *dev)
|
|||
|
||||
static int fingerprint_cancel(struct fingerprint_device __unused *dev)
|
||||
{
|
||||
return bauth_handle->ss_fingerprint_cancel();
|
||||
fingerprint_msg_t *cancel_msg;
|
||||
int ret = 0;
|
||||
|
||||
ret = bauth_handle->ss_fingerprint_cancel();
|
||||
|
||||
cancel_msg = (fingerprint_msg_t *)malloc(sizeof(fingerprint_msg_t));
|
||||
memset(cancel_msg, 0, sizeof(fingerprint_msg_t));
|
||||
|
||||
cancel_msg->type = FINGERPRINT_ERROR;
|
||||
cancel_msg->data.error = FINGERPRINT_ERROR_CANCELED;
|
||||
|
||||
original_notify(cancel_msg);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int fingerprint_remove(struct fingerprint_device __unused *dev, uint32_t gid, uint32_t fid)
|
||||
|
|
Loading…
Reference in a new issue