OSDN Git Service

L2cap Signalling manager: Fix OnCommandReject
authorHansong Zhang <hsz@google.com>
Sun, 15 Mar 2020 23:04:08 +0000 (16:04 -0700)
committerHansong Zhang <hsz@google.com>
Sun, 15 Mar 2020 23:04:08 +0000 (16:04 -0700)
Checking command_just_sent_.command_code_ !=
command_reject_view.GetCode() doesn't make sense because
command_just_sent_.command_code_ is never CommandReject, but XyzRequest,
where command_reject_view.GetCode() is always CommandReject. We
shouldn't check it here.

Bug: 145707677
Test: cert/run --host
Change-Id: I424a8f715ef49372762c6df870d9c63de3b8c597

gd/l2cap/classic/internal/signalling_manager.cc
gd/l2cap/le/internal/signalling_manager.cc

index 8012db3..9193270 100644 (file)
@@ -58,8 +58,7 @@ ClassicSignallingManager::~ClassicSignallingManager() {
 }
 
 void ClassicSignallingManager::OnCommandReject(CommandRejectView command_reject_view) {
-  if (command_just_sent_.signal_id_ != command_reject_view.GetIdentifier() ||
-      command_just_sent_.command_code_ != command_reject_view.GetCode()) {
+  if (command_just_sent_.signal_id_ != command_reject_view.GetIdentifier()) {
     LOG_WARN("Unexpected command reject: no pending request");
     return;
   }
index c9b68a0..ceecebb 100644 (file)
@@ -99,7 +99,7 @@ void LeSignallingManager::CancelAlarm() {
 
 void LeSignallingManager::OnCommandReject(LeCommandRejectView command_reject_view) {
   auto signal_id = command_reject_view.GetIdentifier();
-  if (signal_id != command_just_sent_.signal_id_ || command_just_sent_.command_code_ != command_reject_view.GetCode()) {
+  if (signal_id != command_just_sent_.signal_id_) {
     LOG_WARN("Unexpected response: no pending request");
     return;
   }