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

Commit d42685fb authored by Hemant Gupta's avatar Hemant Gupta Committed by android-build-merger
Browse files

Merge "HID: Access JNI callback object when valid." am: c09426ef

am: 22fd5cd7

Change-Id: Ib659866efa78ffd293aa6be93f4c0062ffe37ecd
parents 146181b3 22fd5cd7
Loading
Loading
Loading
Loading
+20 −2
Original line number Original line Diff line number Diff line
@@ -54,6 +54,10 @@ static void connection_state_callback(bt_bdaddr_t* bd_addr,
                                      bthh_connection_state_t state) {
                                      bthh_connection_state_t state) {
  CallbackEnv sCallbackEnv(__func__);
  CallbackEnv sCallbackEnv(__func__);
  if (!sCallbackEnv.valid()) return;
  if (!sCallbackEnv.valid()) return;
  if (!mCallbacksObj) {
    ALOGE("%s: mCallbacksObj is null", __func__);
    return;
  }
  ScopedLocalRef<jbyteArray> addr(sCallbackEnv.get(), marshall_bda(bd_addr));
  ScopedLocalRef<jbyteArray> addr(sCallbackEnv.get(), marshall_bda(bd_addr));
  if (!addr.get()) {
  if (!addr.get()) {
    ALOGE("Fail to new jbyteArray bd addr for HID channel state");
    ALOGE("Fail to new jbyteArray bd addr for HID channel state");
@@ -69,6 +73,10 @@ static void get_protocol_mode_callback(bt_bdaddr_t* bd_addr,
                                       bthh_protocol_mode_t mode) {
                                       bthh_protocol_mode_t mode) {
  CallbackEnv sCallbackEnv(__func__);
  CallbackEnv sCallbackEnv(__func__);
  if (!sCallbackEnv.valid()) return;
  if (!sCallbackEnv.valid()) return;
  if (!mCallbacksObj) {
    ALOGE("%s: mCallbacksObj is null", __func__);
    return;
  }
  if (hh_status != BTHH_OK) {
  if (hh_status != BTHH_OK) {
    ALOGE("BTHH Status is not OK!");
    ALOGE("BTHH Status is not OK!");
    return;
    return;
@@ -88,6 +96,10 @@ static void get_report_callback(bt_bdaddr_t* bd_addr, bthh_status_t hh_status,
                                uint8_t* rpt_data, int rpt_size) {
                                uint8_t* rpt_data, int rpt_size) {
  CallbackEnv sCallbackEnv(__func__);
  CallbackEnv sCallbackEnv(__func__);
  if (!sCallbackEnv.valid()) return;
  if (!sCallbackEnv.valid()) return;
  if (!mCallbacksObj) {
    ALOGE("%s: mCallbacksObj is null", __func__);
    return;
  }
  if (hh_status != BTHH_OK) {
  if (hh_status != BTHH_OK) {
    ALOGE("BTHH Status is not OK!");
    ALOGE("BTHH Status is not OK!");
    return;
    return;
@@ -115,6 +127,10 @@ static void virtual_unplug_callback(bt_bdaddr_t* bd_addr,
  ALOGV("call to virtual_unplug_callback");
  ALOGV("call to virtual_unplug_callback");
  CallbackEnv sCallbackEnv(__func__);
  CallbackEnv sCallbackEnv(__func__);
  if (!sCallbackEnv.valid()) return;
  if (!sCallbackEnv.valid()) return;
  if (!mCallbacksObj) {
    ALOGE("%s: mCallbacksObj is null", __func__);
    return;
  }
  ScopedLocalRef<jbyteArray> addr(sCallbackEnv.get(), marshall_bda(bd_addr));
  ScopedLocalRef<jbyteArray> addr(sCallbackEnv.get(), marshall_bda(bd_addr));
  if (!addr.get()) {
  if (!addr.get()) {
    ALOGE("Fail to new jbyteArray bd addr for HID channel state");
    ALOGE("Fail to new jbyteArray bd addr for HID channel state");
@@ -127,6 +143,10 @@ static void virtual_unplug_callback(bt_bdaddr_t* bd_addr,
static void handshake_callback(bt_bdaddr_t* bd_addr, bthh_status_t hh_status) {
static void handshake_callback(bt_bdaddr_t* bd_addr, bthh_status_t hh_status) {
  CallbackEnv sCallbackEnv(__func__);
  CallbackEnv sCallbackEnv(__func__);
  if (!sCallbackEnv.valid()) return;
  if (!sCallbackEnv.valid()) return;
  if (!mCallbacksObj) {
    ALOGE("%s: mCallbacksObj is null", __func__);
    return;
  }


  ScopedLocalRef<jbyteArray> addr(sCallbackEnv.get(), marshall_bda(bd_addr));
  ScopedLocalRef<jbyteArray> addr(sCallbackEnv.get(), marshall_bda(bd_addr));
  if (!addr.get()) {
  if (!addr.get()) {
@@ -216,8 +236,6 @@ static void cleanupNative(JNIEnv* env, jobject object) {
    env->DeleteGlobalRef(mCallbacksObj);
    env->DeleteGlobalRef(mCallbacksObj);
    mCallbacksObj = NULL;
    mCallbacksObj = NULL;
  }
  }

  env->DeleteGlobalRef(mCallbacksObj);
}
}


static jboolean connectHidNative(JNIEnv* env, jobject object,
static jboolean connectHidNative(JNIEnv* env, jobject object,