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

Commit d83c04e4 authored by Yuyang Huang's avatar Yuyang Huang
Browse files

Do not automatically open SCO from the Bluetooth stack when the...

Do not automatically open SCO from the Bluetooth stack when the is_sco_managed_by_audio feature is enabled

Bug: 294134504
Bug: 315234036
Test: m .
Change-Id: I65b099d2d93ba0b5ec26e7fa27d39b442402d5aa
parent c3e73433
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -789,6 +789,10 @@ void bta_ag_post_sco_close(tBTA_AG_SCB* p_scb, const tBTA_AG_DATA& data) {
                                        "BTA_AG_POST_SCO_CALL_END_INCALL")) {
          break;
        }
        if (IS_FLAG_ENABLED(is_sco_managed_by_audio)) {
          // let Audio HAL open the SCO
          break;
        }
        bta_ag_sco_open(p_scb, data);
      } else {
        p_scb->post_sco = BTA_AG_POST_SCO_NONE;
+32 −0
Original line number Diff line number Diff line
@@ -1452,6 +1452,10 @@ static void bta_ag_hsp_result(tBTA_AG_SCB* p_scb,
                                        bta_ag_result_text(result.result))) {
          break;
        }
        if (IS_FLAG_ENABLED(is_sco_managed_by_audio)) {
          // let Audio HAL open the SCO
          break;
        }
        bta_ag_sco_open(p_scb, tBTA_AG_DATA::kEmpty);
      }
      break;
@@ -1471,6 +1475,10 @@ static void bta_ag_hsp_result(tBTA_AG_SCB* p_scb,
                                          bta_ag_result_text(result.result))) {
            break;
          }
          if (IS_FLAG_ENABLED(is_sco_managed_by_audio)) {
            // let Audio HAL open the SCO
            break;
          }
          bta_ag_sco_open(p_scb, tBTA_AG_DATA::kEmpty);
        } else if (result.data.audio_handle == BTA_AG_HANDLE_NONE &&
                   bta_ag_sco_is_open(p_scb)) {
@@ -1565,6 +1573,10 @@ static void bta_ag_hfp_result(tBTA_AG_SCB* p_scb,
                                          bta_ag_result_text(result.result))) {
            break;
          }
          if (IS_FLAG_ENABLED(is_sco_managed_by_audio)) {
            // let Audio HAL open the SCO
            break;
          }
          bta_ag_sco_open(p_scb, tBTA_AG_DATA::kEmpty);
        }
      }
@@ -1585,6 +1597,10 @@ static void bta_ag_hfp_result(tBTA_AG_SCB* p_scb,
                                          bta_ag_result_text(result.result))) {
            break;
          }
          if (IS_FLAG_ENABLED(is_sco_managed_by_audio)) {
            // let Audio HAL open the SCO
            break;
          }
          bta_ag_sco_open(p_scb, tBTA_AG_DATA::kEmpty);
        } else if ((result.data.audio_handle == BTA_AG_HANDLE_NONE) &&
                   bta_ag_sco_is_open(p_scb)) {
@@ -1608,6 +1624,10 @@ static void bta_ag_hfp_result(tBTA_AG_SCB* p_scb,
                                        bta_ag_result_text(result.result))) {
          break;
        }
        if (IS_FLAG_ENABLED(is_sco_managed_by_audio)) {
          // let Audio HAL open the SCO
          break;
        }
        bta_ag_sco_open(p_scb, tBTA_AG_DATA::kEmpty);
      }
      break;
@@ -1621,6 +1641,10 @@ static void bta_ag_hfp_result(tBTA_AG_SCB* p_scb,
                                        bta_ag_result_text(result.result))) {
          break;
        }
        if (IS_FLAG_ENABLED(is_sco_managed_by_audio)) {
          // let Audio HAL open the SCO
          break;
        }
        bta_ag_sco_open(p_scb, tBTA_AG_DATA::kEmpty);
      }
      break;
@@ -1634,6 +1658,10 @@ static void bta_ag_hfp_result(tBTA_AG_SCB* p_scb,
                                          bta_ag_result_text(result.result))) {
            break;
          }
          if (IS_FLAG_ENABLED(is_sco_managed_by_audio)) {
            // let Audio HAL open the SCO
            break;
          }
          bta_ag_sco_open(p_scb, tBTA_AG_DATA::kEmpty);
        } else if (result.data.audio_handle == BTA_AG_HANDLE_NONE) {
          bta_ag_sco_close(p_scb, tBTA_AG_DATA::kEmpty);
@@ -1652,6 +1680,10 @@ static void bta_ag_hfp_result(tBTA_AG_SCB* p_scb,
                                          bta_ag_result_text(result.result))) {
            break;
          }
          if (IS_FLAG_ENABLED(is_sco_managed_by_audio)) {
            // let Audio HAL open the SCO
            break;
          }
          bta_ag_sco_open(p_scb, tBTA_AG_DATA::kEmpty);
        } else if (result.data.audio_handle == BTA_AG_HANDLE_NONE) {
          bta_ag_sco_close(p_scb, tBTA_AG_DATA::kEmpty);