This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch feature/udp-support in repository x2gokdriveclient.
commit 10df5d2baf7255f215e07cf677cf3811b5657d23 Author: Oleksandr Shneyder <o.shney...@phoca-gmbh.de> Date: Thu Dec 22 15:50:45 2022 -0600 Recieve udp data. --- client.cpp | 39 ++++++++++++++------------------------- client.h | 1 + displayarea.cpp | 2 +- 3 files changed, 16 insertions(+), 26 deletions(-) diff --git a/client.cpp b/client.cpp index c42ddc9..319e322 100644 --- a/client.cpp +++ b/client.cpp @@ -234,7 +234,7 @@ Client::Client() udpSocket=new QUdpSocket(this); - connect(udpSocket, SIGNAL(readyRead()), this, SLOT(udpDataArrived())); + connect(udpSocket, SIGNAL(readyRead()), this, SLOT(UDPDataArrived())); #ifndef Q_OS_LINUX connect(QGuiApplication::clipboard(), SIGNAL(changed(QClipboard::Mode)), this, SLOT(slotSelectionChanged(QClipboard::Mode))); @@ -402,9 +402,8 @@ void Client::slotDisconnect() } clientSocket->close(); - -#warning close UDPSocket - //((QUdpSocket*)clientSocket)->close(); + if(udpSocket->isOpen()) + udpSocket->close(); } @@ -1771,13 +1770,12 @@ int Client::findPacket(QList< DgramPacket* >* list, uint16_t seq) void Client::readDgram() { - QUdpSocket* socket=(QUdpSocket*)clientSocket; - qint64 available=socket->pendingDatagramSize(); + qint64 available=udpSocket->pendingDatagramSize(); // KDRStdErr()<<"Have available:"<<available<<KDR_ENDL; QByteArray data; data.resize(available); - qint64 read=socket->readDatagram(data.data(),available); + qint64 read=udpSocket->readDatagram(data.data(),available); if(read!=available) { KDRStdErr()<<"Read datagram failed, read "<<data.size()<<" from "<<available<<KDR_ENDL; @@ -1896,15 +1894,17 @@ void Client::slotSynchronize() sendEvent(evmsg); } +void Client::UDPDataArrived() +{ +// KDRStdErr()<<"Got udp data"<<KDR_ENDL; + updateServerAlive(); + while(((QUdpSocket*)udpSocket)->hasPendingDatagrams()) + readDgram(); +} + + void Client::dataArrived() { -#warning use for udp -/* if(connectionType==UDP) - { - while(((QUdpSocket*)clientSocket)->hasPendingDatagrams()) - readDgram(); - return; - }*/ updateServerAlive(); // KDRStdErr()<<"Have available:"<<clientSocket->bytesAvailable(); if(!bytesLeftToRead) @@ -1986,11 +1986,6 @@ void Client::dataArrived() if(clientSocket->bytesAvailable()) dataArrived(); -#warning use for udp -/* { - if(((QUdpSocket*)clientSocket)->bytesAvailable()) - dataArrived(); - }*/ } @@ -2675,10 +2670,4 @@ void Client::openUdpConnection() KDRStdErr(false)<<"UDP connection established"<<KDR_ENDL; udpSocket->write((char*)tmp_cookie,8*4); } - -// for(int i=0;i<8;++i) -// { -// KDRStdErr()<<"Cookie "<<i<<" - "<<tmp_cookie[i]<<KDR_ENDL; -// } - } diff --git a/client.h b/client.h index 6ff2ef4..9752306 100644 --- a/client.h +++ b/client.h @@ -257,6 +257,7 @@ private slots: void socketDisconnected(); void socketError(QAbstractSocket::SocketError socketError); void dataArrived(); + void UDPDataArrived(); void slotSynchronize(); void slotScreenAdded(QScreen* screen); diff --git a/displayarea.cpp b/displayarea.cpp index d60d7ed..b8586ab 100644 --- a/displayarea.cpp +++ b/displayarea.cpp @@ -78,7 +78,7 @@ LRESULT CALLBACK LowLevelKeyboardProc( memcpy(evmsg,(char*)&etype,4); memcpy(evmsg+4,(char*)&mods,4); memcpy(evmsg+8,(char*)&key,4); - display->client->sendEvent(evmsg,12); + display->client->sendEvent(evmsg); return -1; } return CallNextHookEx(0, nCode, wParam, lParam); -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2gokdriveclient.git _______________________________________________ x2go-commits mailing list x2go-commits@lists.x2go.org https://lists.x2go.org/listinfo/x2go-commits