From: Pierre Ossman Date: Mon, 9 Dec 2019 15:58:07 +0000 (+0100) Subject: Check the correct stream if there is more data pending X-Git-Tag: v1.10.90~78 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=10c40dbc8639acf97b246cfebc2b4bf8c55d564d;p=tigervnc.git Check the correct stream if there is more data pending The input stream might no longer be the raw socket, so we need to query what's currently active. That wrapping stream might have its own buffering and may have more data even if the socket is drained. --- diff --git a/vncviewer/CConn.cxx b/vncviewer/CConn.cxx index 6ba3276b..eba5dd34 100644 --- a/vncviewer/CConn.cxx +++ b/vncviewer/CConn.cxx @@ -266,7 +266,7 @@ void CConn::socketEvent(FL_SOCKET fd, void *data) // Also check if we need to stop reading and terminate if (should_exit()) break; - } while (cc->sock->inStream().checkNoWait(1)); + } while (cc->getInStream()->checkNoWait(1)); } catch (rdr::EndOfStream& e) { vlog.info("%s", e.str()); exit_vncviewer();