From 917bf618d8afbfc9e1d6a040047f637c4bab21c5 Mon Sep 17 00:00:00 2001 From: gixxpunk Date: Mon, 27 Feb 2012 18:56:12 +0000 Subject: [PATCH] [PATCH] zapit: make setStandby(false) block this avoids many nasty race conditions when leaving standby From: Stefan Seyfried Date: Sat, 25 Feb 2012 22:34:58 +0100 git-svn-id: file:///home/bas/coolstream_public_svn/THIRDPARTY/applications/neutrino-beta@2131 e54a6e83-5905-42d5-8d5c-058d10e6a962 Origin commit data ------------------ Commit: https://github.com/neutrino-images/ni-neutrino/commit/ac3707eccb1ad1ea610796320baeea07c98c28a0 Author: gixxpunk Date: 2012-02-27 (Mon, 27 Feb 2012) --- src/zapit/lib/zapitclient.cpp | 6 ++---- src/zapit/src/zapit.cpp | 4 ++-- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/zapit/lib/zapitclient.cpp b/src/zapit/lib/zapitclient.cpp index 588249d55..2af969c2f 100644 --- a/src/zapit/lib/zapitclient.cpp +++ b/src/zapit/lib/zapitclient.cpp @@ -921,10 +921,8 @@ void CZapitClient::setStandby(const bool enable) CZapitMessages::commandBoolean msg; msg.truefalse = enable; send(CZapitMessages::CMD_SET_STANDBY, (char*)&msg, sizeof(msg)); - if(enable) { - CZapitMessages::responseCmd response; - CBasicClient::receive_data((char* )&response, sizeof(response)); - } + CZapitMessages::responseCmd response; + CBasicClient::receive_data((char* )&response, sizeof(response)); close_connection(); } diff --git a/src/zapit/src/zapit.cpp b/src/zapit/src/zapit.cpp index c2764aef5..da501aafe 100644 --- a/src/zapit/src/zapit.cpp +++ b/src/zapit/src/zapit.cpp @@ -1520,10 +1520,10 @@ printf("[zapit] TP_id %d freq %d rate %d fec %d pol %d\n", TP.TP_id, TP.feparams if (msgBoolean.truefalse) { // if(currentMode & RECORD_MODE) videoDecoder->freeze(); enterStandby(); - response.cmd = CZapitMessages::CMD_READY; - CBasicServer::send_data(connfd, &response, sizeof(response)); } else leaveStandby(); + response.cmd = CZapitMessages::CMD_READY; + CBasicServer::send_data(connfd, &response, sizeof(response)); break; }