diff --git a/src/klkt/klkt.hpp b/src/klkt/klkt.hpp index df5a824e35993aa4f1223240c7aacc5ea49304df..c282e1648746ea7f98b8bb5b352ae2248c63dc7f 100644 --- a/src/klkt/klkt.hpp +++ b/src/klkt/klkt.hpp @@ -297,8 +297,8 @@ private slots: for (auto &line : lines) { return_position = line.length() + 1; - m_pending_data = m_pending_data.right(m_pending_data.length() - return_position); - if (line == "OK") { + m_pending_data = m_pending_data.right(m_pending_data.length() - return_position); + if (line == "OK" || line.left(3) == "ACK") { m_sock.close(); return; } @@ -328,8 +328,8 @@ private slots: for (const auto &line : lines) { return_position = line.length() + 1; - m_pending_data = m_pending_data.right(m_pending_data.length() - return_position); - if (line == "OK") { + m_pending_data = m_pending_data.right(m_pending_data.length() - return_position); + if (line == "OK" || line.left(3) == "ACK") { /* Read the current song if needed */ if (m_state == "play") { QWidget::disconnect(m_connect_read); @@ -408,7 +408,7 @@ private: connect(&m_sock, &Socket::readyRead, this, [&]() { QStringList lines = QTextCodec::codecForMib(UTF8_MIB)->toUnicode(m_sock.readAll()).split("\n"); for (auto &line : lines) { - if (line == "OK") { + if (line == "OK" || line.left(3) == "ACK") { m_sock.close(); emit finished(); return;