|
|
@ -101,6 +101,7 @@ QtLocalPeer::QtLocalPeer(QObject* parent, const QString &appId) |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
server = new QLocalServer(this); |
|
|
|
server = new QLocalServer(this); |
|
|
|
|
|
|
|
server->setSocketOptions(QLocalServer::UserAccessOption); |
|
|
|
QString lockName = QDir(QDir::tempPath()).absolutePath() |
|
|
|
QString lockName = QDir(QDir::tempPath()).absolutePath() |
|
|
|
+ QLatin1Char('/') + socketName |
|
|
|
+ QLatin1Char('/') + socketName |
|
|
|
+ QLatin1String("-lockfile"); |
|
|
|
+ QLatin1String("-lockfile"); |
|
|
@ -191,6 +192,12 @@ void QtLocalPeer::receiveConnection() |
|
|
|
QByteArray uMsg; |
|
|
|
QByteArray uMsg; |
|
|
|
quint32 remaining; |
|
|
|
quint32 remaining; |
|
|
|
ds >> remaining; |
|
|
|
ds >> remaining; |
|
|
|
|
|
|
|
if (remaining > 65535) { |
|
|
|
|
|
|
|
// drop suspiciously large data
|
|
|
|
|
|
|
|
delete socket; |
|
|
|
|
|
|
|
return; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
uMsg.resize(remaining); |
|
|
|
uMsg.resize(remaining); |
|
|
|
int got = 0; |
|
|
|
int got = 0; |
|
|
|
char* uMsgBuf = uMsg.data(); |
|
|
|
char* uMsgBuf = uMsg.data(); |
|
|
|