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

Commit 316327dd authored by Hansong Zhang's avatar Hansong Zhang
Browse files

L2CAP Classic SignallingManager Fix

Don't send next outgoing command when we receive a request from remote

Test: run_cert.sh
Bug: 145622504
Change-Id: Ia2437b2cf1d4abd87dc31b698ae694d194f5a1d7
parent e59f1886
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -407,7 +407,6 @@ void ClassicSignallingManager::OnDisconnectionRequest(SignalId signal_id, Cid ci
  enqueue_buffer_->Enqueue(std::move(builder), handler_);
  channel->OnClosed(hci::ErrorCode::SUCCESS);
  link_->FreeDynamicChannel(cid);
  handle_send_next_command();
}

void ClassicSignallingManager::OnDisconnectionResponse(SignalId signal_id, Cid remote_cid, Cid cid) {
@@ -442,7 +441,6 @@ void ClassicSignallingManager::OnEchoRequest(SignalId signal_id, const PacketVie
  raw_builder->AddOctets(packet_vector);
  auto builder = EchoResponseBuilder::Create(signal_id.Value(), std::move(raw_builder));
  enqueue_buffer_->Enqueue(std::move(builder), handler_);
  handle_send_next_command();
}

void ClassicSignallingManager::OnEchoResponse(SignalId signal_id, const PacketView<kLittleEndian>& packet) {
+1 −1
Original line number Diff line number Diff line
@@ -106,7 +106,7 @@ class ClassicSignallingManager {

  os::Handler* handler_;
  Link* link_;
  [[maybe_unused]] l2cap::internal::DataPipelineManager* data_pipeline_manager_;
  l2cap::internal::DataPipelineManager* data_pipeline_manager_;
  std::shared_ptr<classic::internal::FixedChannelImpl> signalling_channel_;
  DynamicChannelServiceManagerImpl* dynamic_service_manager_;
  l2cap::internal::DynamicChannelAllocator* channel_allocator_;