diff --git a/src/eitd/dmx.cpp b/src/eitd/dmx.cpp index 007676db1..e36ada64b 100644 --- a/src/eitd/dmx.cpp +++ b/src/eitd/dmx.cpp @@ -283,6 +283,7 @@ int DMX::getSection(uint8_t *buf, const unsigned timeoutInMSeconds, int &timeout lock(); if (!isOpen()) { unlock(); + timeouts = -1; return -1; } diff --git a/src/eitd/sectionsd.cpp b/src/eitd/sectionsd.cpp index 17aef38ad..a2c06ce43 100644 --- a/src/eitd/sectionsd.cpp +++ b/src/eitd/sectionsd.cpp @@ -980,6 +980,7 @@ static void commandserviceStopped(int connfd, char * /* data */, const unsigned threadCN.unlock(); threadEIT.unlock(); threadCN.stopUpdate(); + current_channel_id = 0; xprintf("[sectionsd] commandserviceStopped done\n"); }