From 802b7a0f90e3668f7c4eac90f8692bc9b39a4833 Mon Sep 17 00:00:00 2001 From: Lars Op den Kamp Date: Sat, 3 Dec 2011 22:37:15 +0100 Subject: [PATCH] cec: send ping and bootloader commands via the output queue --- src/lib/AdapterCommunication.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/lib/AdapterCommunication.cpp b/src/lib/AdapterCommunication.cpp index e6afcf4..314bfe5 100644 --- a/src/lib/AdapterCommunication.cpp +++ b/src/lib/AdapterCommunication.cpp @@ -458,7 +458,9 @@ bool CAdapterCommunication::StartBootloader(void) output->push_escaped(MSGCODE_START_BOOTLOADER); output->push_back(MSGEND); - SendMessageToAdapter(output); + CLockObject lock(&output->mutex); + if (Write(output)) + output->condition.Wait(&output->mutex); bReturn = output->state == ADAPTER_MESSAGE_STATE_SENT; delete output; @@ -478,7 +480,9 @@ bool CAdapterCommunication::PingAdapter(void) output->push_escaped(MSGCODE_PING); output->push_back(MSGEND); - SendMessageToAdapter(output); + CLockObject lock(&output->mutex); + if (Write(output)) + output->condition.Wait(&output->mutex); bReturn = output->state == ADAPTER_MESSAGE_STATE_SENT; delete output; -- 2.34.1