diff options
author | hjk <hjk@qt.io> | 2020-02-19 09:07:12 +0100 |
---|---|---|
committer | hjk <hjk@qt.io> | 2020-02-19 09:57:04 +0000 |
commit | 5064bddff6fbd8cf5615629ecf468f1ff69c0613 (patch) | |
tree | dbbdd1306e2a363fe4ca1a7298493b13c39831b4 | |
parent | 0ed1d1c374ef087ec63ae00312b08ba2cc3e281d (diff) | |
download | qt-creator-5064bddff6fbd8cf5615629ecf468f1ff69c0613.tar.gz |
Work around QLocalSocket::error deprecation
Centralizing does not bring much benefit here, it's just six locations,
and having either a central #include <QLocalSocket> in algorithm.h
or a separe file does not sound better.
In any case, it is absurd, that deprecating functions to "make code
nicer" requires spilling #if QT_VERSION_CHECK over the code.
Change-Id: Ia9a8c0eb6ef7cabbaffb46cfe472247e26e7e2c2
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
-rw-r--r-- | share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.cpp | 9 | ||||
-rw-r--r-- | src/libs/clangsupport/connectionclient.cpp | 9 | ||||
-rw-r--r-- | src/libs/clangsupport/connectionserver.h | 9 | ||||
-rw-r--r-- | src/libs/qmldebug/qmldebugconnection.cpp | 10 | ||||
-rw-r--r-- | src/plugins/boot2qt/device-detection/qdbwatcher.cpp | 10 | ||||
-rw-r--r-- | src/plugins/cmakeprojectmanager/servermode.cpp | 11 |
6 files changed, 49 insertions, 9 deletions
diff --git a/share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.cpp b/share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.cpp index 4ca4f0fb38..b6b17f1bfa 100644 --- a/share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.cpp +++ b/share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.cpp @@ -76,6 +76,13 @@ namespace QmlDesigner { +constexpr void (QLocalSocket::*LocalSocketErrorFunction)(QLocalSocket::LocalSocketError) +#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0) + = &QLocalSocket::error; +#else + = &QLocalSocket::errorOccurred; +#endif + NodeInstanceClientProxy::NodeInstanceClientProxy(QObject *parent) : QObject(parent), m_inputIoDevice(nullptr), @@ -93,7 +100,7 @@ void NodeInstanceClientProxy::initializeSocket() { QLocalSocket *localSocket = new QLocalSocket(this); connect(localSocket, &QIODevice::readyRead, this, &NodeInstanceClientProxy::readDataStream); - connect(localSocket, QOverload<QLocalSocket::LocalSocketError>::of(&QLocalSocket::error), + connect(localSocket, LocalSocketErrorFunction, QCoreApplication::instance(), &QCoreApplication::quit); connect(localSocket, &QLocalSocket::disconnected, QCoreApplication::instance(), &QCoreApplication::quit); localSocket->connectToServer(QCoreApplication::arguments().at(1), QIODevice::ReadWrite | QIODevice::Unbuffered); diff --git a/src/libs/clangsupport/connectionclient.cpp b/src/libs/clangsupport/connectionclient.cpp index b3025baeea..fe74c6ca1d 100644 --- a/src/libs/clangsupport/connectionclient.cpp +++ b/src/libs/clangsupport/connectionclient.cpp @@ -324,8 +324,15 @@ void ConnectionClient::connectStandardOutputAndError(QProcess *process) const void ConnectionClient::connectLocalSocketError() const { + constexpr void (QLocalSocket::*LocalSocketErrorFunction)(QLocalSocket::LocalSocketError) +#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0) + = &QLocalSocket::error; +#else + = &QLocalSocket::errorOccurred; +#endif + connect(m_localSocket, - QOverload<QLocalSocket::LocalSocketError>::of(&QLocalSocket::error), + LocalSocketErrorFunction, this, &ConnectionClient::printLocalSocketError); } diff --git a/src/libs/clangsupport/connectionserver.h b/src/libs/clangsupport/connectionserver.h index b60083c4f8..1196459c56 100644 --- a/src/libs/clangsupport/connectionserver.h +++ b/src/libs/clangsupport/connectionserver.h @@ -81,8 +81,15 @@ public: private: void connectToLocalServer(const QString &connectionName) { + constexpr void (QLocalSocket::*LocalSocketErrorFunction)(QLocalSocket::LocalSocketError) +#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0) + = &QLocalSocket::error; +#else + = &QLocalSocket::errorOccurred; +#endif + QObject::connect(&m_localSocket, - QOverload<QLocalSocket::LocalSocketError>::of(&QLocalSocket::error), + LocalSocketErrorFunction, [&] (QLocalSocket::LocalSocketError) { qWarning() << "ConnectionServer error:" << m_localSocket.errorString() << connectionName; }); diff --git a/src/libs/qmldebug/qmldebugconnection.cpp b/src/libs/qmldebug/qmldebugconnection.cpp index b06a88f947..33b050efb3 100644 --- a/src/libs/qmldebug/qmldebugconnection.cpp +++ b/src/libs/qmldebug/qmldebugconnection.cpp @@ -387,8 +387,14 @@ void QmlDebugConnection::newConnection() connect(socket, &QLocalSocket::disconnected, this, &QmlDebugConnection::socketDisconnected, Qt::QueuedConnection); - connect(socket, QOverload<QLocalSocket::LocalSocketError>::of(&QLocalSocket::error), - this, [this](QLocalSocket::LocalSocketError error) { + constexpr void (QLocalSocket::*LocalSocketErrorFunction)(QLocalSocket::LocalSocketError) +#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0) + = &QLocalSocket::error; +#else + = &QLocalSocket::errorOccurred; +#endif + + connect(socket, LocalSocketErrorFunction, this, [this](QLocalSocket::LocalSocketError error) { emit logError(socketErrorToString(static_cast<QAbstractSocket::SocketError>(error))); socketDisconnected(); }, Qt::QueuedConnection); diff --git a/src/plugins/boot2qt/device-detection/qdbwatcher.cpp b/src/plugins/boot2qt/device-detection/qdbwatcher.cpp index ee2b091fd3..2435dbaea7 100644 --- a/src/plugins/boot2qt/device-detection/qdbwatcher.cpp +++ b/src/plugins/boot2qt/device-detection/qdbwatcher.cpp @@ -62,11 +62,17 @@ void QdbWatcher::start(RequestType requestType) void QdbWatcher::startPrivate() { + constexpr void (QLocalSocket::*LocalSocketErrorFunction)(QLocalSocket::LocalSocketError) +#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0) + = &QLocalSocket::error; +#else + = &QLocalSocket::errorOccurred; +#endif + m_socket = std::unique_ptr<QLocalSocket>(new QLocalSocket()); connect(m_socket.get(), &QLocalSocket::connected, this, &QdbWatcher::handleWatchConnection); - connect(m_socket.get(), static_cast<void (QLocalSocket::*) - (QLocalSocket::LocalSocketError)>(&QLocalSocket::error), + connect(m_socket.get(), LocalSocketErrorFunction, this, &QdbWatcher::handleWatchError); m_socket->connectToServer(qdbSocketName); } diff --git a/src/plugins/cmakeprojectmanager/servermode.cpp b/src/plugins/cmakeprojectmanager/servermode.cpp index f9d3c4566e..ce57e9d979 100644 --- a/src/plugins/cmakeprojectmanager/servermode.cpp +++ b/src/plugins/cmakeprojectmanager/servermode.cpp @@ -207,8 +207,15 @@ void ServerMode::connectToServer() auto socket = new QLocalSocket(m_cmakeProcess.get()); connect(socket, &QLocalSocket::readyRead, this, &ServerMode::handleRawCMakeServerData); - connect(socket, QOverload<QLocalSocket::LocalSocketError>::of(&QLocalSocket::error), - this, [this, socket]() { + + constexpr void (QLocalSocket::*LocalSocketErrorFunction)(QLocalSocket::LocalSocketError) +#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0) + = &QLocalSocket::error; +#else + = &QLocalSocket::errorOccurred; +#endif + + connect(socket, LocalSocketErrorFunction, this, [this, socket]() { reportError(socket->errorString()); m_cmakeSocket = nullptr; socket->disconnect(); |