From 6bbcabe0ccf7087c9754ebc17e4bded4d322eaa3 Mon Sep 17 00:00:00 2001
From: Stefan Kerkmann <karlk90@pm.me>
Date: Mon, 3 Oct 2022 18:23:45 +0200
Subject: [Core] Serial-protocol: always clear receive queue on main half of
 split keyboard (#18419)

---
 platforms/chibios/drivers/serial_protocol.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

(limited to 'platforms/chibios/drivers/serial_protocol.c')

diff --git a/platforms/chibios/drivers/serial_protocol.c b/platforms/chibios/drivers/serial_protocol.c
index c95aed9885..ccaf73282d 100644
--- a/platforms/chibios/drivers/serial_protocol.c
+++ b/platforms/chibios/drivers/serial_protocol.c
@@ -102,15 +102,11 @@ static inline bool react_to_transaction(void) {
  * @return bool Indicates success of transaction.
  */
 bool soft_serial_transaction(int index) {
-    bool result = initiate_transaction((uint8_t)index);
+    /* Clear the receive queue, to start with a clean slate.
+     * Parts of failed transactions or spurious bytes could still be in it. */
+    serial_transport_driver_clear();
 
-    if (unlikely(!result)) {
-        /* Clear the receive queue, to start with a clean slate.
-         * Parts of failed transactions or spurious bytes could still be in it. */
-        serial_transport_driver_clear();
-    }
-
-    return result;
+    return initiate_transaction((uint8_t)index);
 }
 
 /**
-- 
cgit v1.2.3