ソースを参照

Handle clients lost during querying

tags/v1.11.90
Pierre Ossman 4年前
コミット
9f623551a7
1個のファイルの変更12行の追加2行の削除
  1. 12
    2
      unix/x0vncserver/XDesktop.cxx

+ 12
- 2
unix/x0vncserver/XDesktop.cxx ファイルの表示

@@ -288,9 +288,19 @@ void XDesktop::queryConnection(network::Socket* sock,
{
assert(isRunning());

// Someone already querying?
if (queryConnectSock) {
server->approveConnection(sock, false, "Another connection is currently being queried.");
return;
std::list<network::Socket*> sockets;
std::list<network::Socket*>::iterator i;

// Check if this socket is still valid
server->getSockets(&sockets);
for (i = sockets.begin(); i != sockets.end(); i++) {
if (*i == queryConnectSock) {
server->approveConnection(sock, false, "Another connection is currently being queried.");
return;
}
}
}

if (!userName)

読み込み中…
キャンセル
保存