diff options
author | Marco Bubke <marco.bubke@qt.io> | 2019-02-19 19:20:57 +0100 |
---|---|---|
committer | Marco Bubke <marco.bubke@qt.io> | 2019-02-22 12:09:00 +0000 |
commit | 8c781f7e6aa763a4caa21c5f5c5504b79634ea46 (patch) | |
tree | 987a87ddcfa5d68f24aa0b92ddb0120beb791a20 /src/libs | |
parent | 256d140933216b64123d1c50dd5e047898037ec2 (diff) |
Clang: Fix progress bar
Sometimes the messages are not send immediately, so we force it.
Task-number: QTCREATORBUG-21957
Change-Id: I9526cb4b4e3dd8b7a02e15f77bffdc51917d47c8
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
Diffstat (limited to 'src/libs')
20 files changed, 142 insertions, 88 deletions
diff --git a/src/libs/clangsupport/baseserverproxy.cpp b/src/libs/clangsupport/baseserverproxy.cpp index 6f563ffd9d..0c565de269 100644 --- a/src/libs/clangsupport/baseserverproxy.cpp +++ b/src/libs/clangsupport/baseserverproxy.cpp @@ -26,14 +26,25 @@ #include "baseserverproxy.h" #include "messageenvelop.h" -#include <QIODevice> +#include <QLocalSocket> namespace ClangBackEnd { +BaseServerProxy::BaseServerProxy(IpcClientInterface *client, QLocalSocket *localSocket) + : m_writeMessageBlock(localSocket) + , m_readMessageBlock(localSocket) + , m_client(client) +{ + if (localSocket) + QObject::connect(localSocket, &QIODevice::readyRead, [this]() { + BaseServerProxy::readMessages(); + }); +} + BaseServerProxy::BaseServerProxy(IpcClientInterface *client, QIODevice *ioDevice) - : m_writeMessageBlock(ioDevice), - m_readMessageBlock(ioDevice), - m_client(client) + : m_writeMessageBlock(ioDevice) + , m_readMessageBlock(ioDevice) + , m_client(client) { if (ioDevice) QObject::connect(ioDevice, &QIODevice::readyRead, [this] () { BaseServerProxy::readMessages(); }); @@ -51,11 +62,13 @@ void BaseServerProxy::resetState() m_readMessageBlock.resetState(); } -void BaseServerProxy::setIoDevice(QIODevice *ioDevice) +void BaseServerProxy::setLocalSocket(QLocalSocket *localSocket) { - QObject::connect(ioDevice, &QIODevice::readyRead, [this] () { BaseServerProxy::readMessages(); }); - m_writeMessageBlock.setIoDevice(ioDevice); - m_readMessageBlock.setIoDevice(ioDevice); + QObject::connect(localSocket, &QIODevice::readyRead, [this]() { + BaseServerProxy::readMessages(); + }); + m_writeMessageBlock.setLocalSocket(localSocket); + m_readMessageBlock.setIoDevice(localSocket); } } // namespace ClangBackEnd diff --git a/src/libs/clangsupport/baseserverproxy.h b/src/libs/clangsupport/baseserverproxy.h index 246f0604ec..797f02999d 100644 --- a/src/libs/clangsupport/baseserverproxy.h +++ b/src/libs/clangsupport/baseserverproxy.h @@ -37,13 +37,14 @@ class CLANGSUPPORT_EXPORT BaseServerProxy BaseServerProxy &operator=(const BaseServerProxy&) = delete; public: + BaseServerProxy(IpcClientInterface *client, QLocalSocket *localSocket); BaseServerProxy(IpcClientInterface *client, QIODevice *ioDevice); void readMessages(); void resetState(); - void setIoDevice(QIODevice *ioDevice); + void setLocalSocket(QLocalSocket *localSocket); protected: ~BaseServerProxy() = default; diff --git a/src/libs/clangsupport/clangcodemodelclientproxy.cpp b/src/libs/clangsupport/clangcodemodelclientproxy.cpp index 538677e6c1..cf3e699e21 100644 --- a/src/libs/clangsupport/clangcodemodelclientproxy.cpp +++ b/src/libs/clangsupport/clangcodemodelclientproxy.cpp @@ -31,19 +31,34 @@ #include "messageenvelop.h" #include <QDebug> -#include <QIODevice> +#include <QLocalSocket> #include <QVariant> #include <QVector> namespace ClangBackEnd { -ClangCodeModelClientProxy::ClangCodeModelClientProxy(ClangCodeModelServerInterface *server, QIODevice *ioDevice) - : m_writeMessageBlock(ioDevice), - m_readMessageBlock(ioDevice), - m_server(server), - m_ioDevice(ioDevice) +ClangCodeModelClientProxy::ClangCodeModelClientProxy(ClangCodeModelServerInterface *server, + QLocalSocket *localSocket) + : m_writeMessageBlock(localSocket) + , m_readMessageBlock(localSocket) + , m_server(server) + , m_ioDevice(localSocket) { - QObject::connect(m_ioDevice, &QIODevice::readyRead, [this] () {ClangCodeModelClientProxy::readMessages();}); + QObject::connect(m_ioDevice, &QIODevice::readyRead, [this]() { + ClangCodeModelClientProxy::readMessages(); + }); +} + +ClangCodeModelClientProxy::ClangCodeModelClientProxy(ClangCodeModelServerInterface *server, + QIODevice *ioDevice) + : m_writeMessageBlock(ioDevice) + , m_readMessageBlock(ioDevice) + , m_server(server) + , m_ioDevice(ioDevice) +{ + QObject::connect(m_ioDevice, &QIODevice::readyRead, [this]() { + ClangCodeModelClientProxy::readMessages(); + }); } ClangCodeModelClientProxy::ClangCodeModelClientProxy(ClangCodeModelClientProxy &&other) @@ -106,9 +121,9 @@ void ClangCodeModelClientProxy::readMessages() m_server->dispatch(message); } -bool ClangCodeModelClientProxy::isUsingThatIoDevice(QIODevice *m_ioDevice) const +bool ClangCodeModelClientProxy::isUsingThatIoDevice(QIODevice *ioDevice) const { - return this->m_ioDevice == m_ioDevice; + return m_ioDevice == ioDevice; } } // namespace ClangBackEnd diff --git a/src/libs/clangsupport/clangcodemodelclientproxy.h b/src/libs/clangsupport/clangcodemodelclientproxy.h index 480cbe646e..4b0e1f9d2a 100644 --- a/src/libs/clangsupport/clangcodemodelclientproxy.h +++ b/src/libs/clangsupport/clangcodemodelclientproxy.h @@ -36,6 +36,7 @@ QT_BEGIN_NAMESPACE class QLocalServer; +class QLocalSocket; class QIODevice; QT_END_NAMESPACE @@ -44,6 +45,8 @@ namespace ClangBackEnd { class CLANGSUPPORT_EXPORT ClangCodeModelClientProxy : public ClangCodeModelClientInterface { public: + explicit ClangCodeModelClientProxy(ClangCodeModelServerInterface *server, + QLocalSocket *localSocket); explicit ClangCodeModelClientProxy(ClangCodeModelServerInterface *server, QIODevice *ioDevice); ClangCodeModelClientProxy(const ClangCodeModelClientProxy&) = delete; const ClangCodeModelClientProxy &operator=(const ClangCodeModelClientProxy&) = delete; diff --git a/src/libs/clangsupport/clangcodemodelconnectionclient.cpp b/src/libs/clangsupport/clangcodemodelconnectionclient.cpp index 56186e24dc..618782d1d8 100644 --- a/src/libs/clangsupport/clangcodemodelconnectionclient.cpp +++ b/src/libs/clangsupport/clangcodemodelconnectionclient.cpp @@ -41,12 +41,10 @@ QString currentProcessId() } -ClangCodeModelConnectionClient::ClangCodeModelConnectionClient( - ClangCodeModelClientInterface *client) +ClangCodeModelConnectionClient::ClangCodeModelConnectionClient(ClangCodeModelClientInterface *client) : ConnectionClient(Utils::TemporaryDirectory::masterDirectoryPath() - + QStringLiteral("/ClangBackEnd-") - + currentProcessId()), - m_serverProxy(client, nullptr) + + QStringLiteral("/ClangBackEnd-") + currentProcessId()) + , m_serverProxy(client) { m_processCreator.setTemporaryDirectoryPattern("clangbackend-XXXXXX"); m_processCreator.setArguments({connectionName()}); @@ -85,9 +83,9 @@ QString ClangCodeModelConnectionClient::outputName() const return QStringLiteral("ClangCodeModelConnectionClient"); } -void ClangCodeModelConnectionClient::newConnectedServer(QIODevice *ioDevice) +void ClangCodeModelConnectionClient::newConnectedServer(QLocalSocket *localSocket) { - m_serverProxy.setIoDevice(ioDevice); + m_serverProxy.setLocalSocket(localSocket); } } // namespace ClangBackEnd diff --git a/src/libs/clangsupport/clangcodemodelconnectionclient.h b/src/libs/clangsupport/clangcodemodelconnectionclient.h index c1618b06d9..9b0e49ae5b 100644 --- a/src/libs/clangsupport/clangcodemodelconnectionclient.h +++ b/src/libs/clangsupport/clangcodemodelconnectionclient.h @@ -41,7 +41,7 @@ protected: void sendEndCommand() override; void resetState() override; QString outputName() const override; - void newConnectedServer(QIODevice *ioDevice) override; + void newConnectedServer(QLocalSocket *localSocket) override; private: ClangCodeModelServerProxy m_serverProxy; diff --git a/src/libs/clangsupport/clangcodemodelserverproxy.cpp b/src/libs/clangsupport/clangcodemodelserverproxy.cpp index 6d90f20016..d77e27bffd 100644 --- a/src/libs/clangsupport/clangcodemodelserverproxy.cpp +++ b/src/libs/clangsupport/clangcodemodelserverproxy.cpp @@ -32,6 +32,11 @@ namespace ClangBackEnd { ClangCodeModelServerProxy::ClangCodeModelServerProxy(ClangCodeModelClientInterface *client, + QLocalSocket *localSocket) + : BaseServerProxy(client, localSocket) +{} + +ClangCodeModelServerProxy::ClangCodeModelServerProxy(ClangCodeModelClientInterface *client, QIODevice *ioDevice) : BaseServerProxy(client, ioDevice) { diff --git a/src/libs/clangsupport/clangcodemodelserverproxy.h b/src/libs/clangsupport/clangcodemodelserverproxy.h index e18fd37402..0ea4b01672 100644 --- a/src/libs/clangsupport/clangcodemodelserverproxy.h +++ b/src/libs/clangsupport/clangcodemodelserverproxy.h @@ -46,6 +46,7 @@ class CLANGSUPPORT_EXPORT ClangCodeModelServerProxy : public BaseServerProxy, public ClangCodeModelServerInterface { public: + ClangCodeModelServerProxy(ClangCodeModelClientInterface *client, QLocalSocket *localSocket = {}); ClangCodeModelServerProxy(ClangCodeModelClientInterface *client, QIODevice *ioDevice); void end() override; diff --git a/src/libs/clangsupport/connectionclient.h b/src/libs/clangsupport/connectionclient.h index 8fbc73a06c..c3ded38029 100644 --- a/src/libs/clangsupport/connectionclient.h +++ b/src/libs/clangsupport/connectionclient.h @@ -100,7 +100,7 @@ protected: QString connectionName() const; bool event(QEvent* event); - virtual void newConnectedServer(QIODevice *ioDevice) = 0; + virtual void newConnectedServer(QLocalSocket *localSocket) = 0; private: static bool isProcessRunning(QProcess *process); diff --git a/src/libs/clangsupport/pchmanagerclientproxy.cpp b/src/libs/clangsupport/pchmanagerclientproxy.cpp index 595187d155..a18ac166d2 100644 --- a/src/libs/clangsupport/pchmanagerclientproxy.cpp +++ b/src/libs/clangsupport/pchmanagerclientproxy.cpp @@ -32,35 +32,29 @@ #include "progressmessage.h" #include <QDebug> -#include <QIODevice> +#include <QLocalSocket> namespace ClangBackEnd { -PchManagerClientProxy::PchManagerClientProxy(PchManagerServerInterface *server, QIODevice *ioDevice) - : writeMessageBlock(ioDevice), - readMessageBlock(ioDevice), - server(server), - ioDevice(ioDevice) -{ - QObject::connect(ioDevice, &QIODevice::readyRead, [this] () {PchManagerClientProxy::readMessages();}); -} - -PchManagerClientProxy::PchManagerClientProxy(PchManagerClientProxy &&other) - : writeMessageBlock(std::move(other.writeMessageBlock)), - readMessageBlock(std::move(other.readMessageBlock)), - server(std::move(other.server)), - ioDevice(std::move(other.ioDevice)) +PchManagerClientProxy::PchManagerClientProxy(PchManagerServerInterface *server, + QLocalSocket *localSocket) + : writeMessageBlock(localSocket) + , readMessageBlock(localSocket) + , server(server) { + QObject::connect(localSocket, &QIODevice::readyRead, [this]() { + PchManagerClientProxy::readMessages(); + }); } -PchManagerClientProxy &PchManagerClientProxy::operator=(PchManagerClientProxy &&other) +PchManagerClientProxy::PchManagerClientProxy(PchManagerServerInterface *server, QIODevice *ioDevice) + : writeMessageBlock(ioDevice) + , readMessageBlock(ioDevice) + , server(server) { - writeMessageBlock = std::move(other.writeMessageBlock); - readMessageBlock = std::move(other.readMessageBlock); - server = std::move(other.server); - ioDevice = std::move(other.ioDevice); - - return *this; + QObject::connect(ioDevice, &QIODevice::readyRead, [this]() { + PchManagerClientProxy::readMessages(); + }); } void PchManagerClientProxy::readMessages() diff --git a/src/libs/clangsupport/pchmanagerclientproxy.h b/src/libs/clangsupport/pchmanagerclientproxy.h index 8efacf504f..516b2e3a86 100644 --- a/src/libs/clangsupport/pchmanagerclientproxy.h +++ b/src/libs/clangsupport/pchmanagerclientproxy.h @@ -34,15 +34,16 @@ namespace ClangBackEnd { class PchManagerServerInterface; -class CLANGSUPPORT_EXPORT PchManagerClientProxy : public PchManagerClientInterface +class CLANGSUPPORT_EXPORT PchManagerClientProxy final : public PchManagerClientInterface { public: + explicit PchManagerClientProxy(PchManagerServerInterface *server, QLocalSocket *localSocket); explicit PchManagerClientProxy(PchManagerServerInterface *server, QIODevice *ioDevice); PchManagerClientProxy(const PchManagerClientProxy&) = delete; const PchManagerClientProxy &operator=(const PchManagerClientProxy&) = delete; - PchManagerClientProxy(PchManagerClientProxy&&other); - PchManagerClientProxy &operator=(PchManagerClientProxy&&other); + PchManagerClientProxy(PchManagerClientProxy &&other) = default; + PchManagerClientProxy &operator=(PchManagerClientProxy &&other) = default; void readMessages(); @@ -54,7 +55,6 @@ private: ClangBackEnd::WriteMessageBlock writeMessageBlock; ClangBackEnd::ReadMessageBlock readMessageBlock; PchManagerServerInterface *server = nullptr; - QIODevice *ioDevice = nullptr; }; } // namespace ClangBackEnd diff --git a/src/libs/clangsupport/pchmanagerserverproxy.cpp b/src/libs/clangsupport/pchmanagerserverproxy.cpp index dedbb23d50..5f1fb03948 100644 --- a/src/libs/clangsupport/pchmanagerserverproxy.cpp +++ b/src/libs/clangsupport/pchmanagerserverproxy.cpp @@ -38,6 +38,11 @@ namespace ClangBackEnd { +PchManagerServerProxy::PchManagerServerProxy(PchManagerClientInterface *client, + QLocalSocket *localSocket) + : BaseServerProxy(client, localSocket) +{} + PchManagerServerProxy::PchManagerServerProxy(PchManagerClientInterface *client, QIODevice *ioDevice) : BaseServerProxy(client, ioDevice) { diff --git a/src/libs/clangsupport/pchmanagerserverproxy.h b/src/libs/clangsupport/pchmanagerserverproxy.h index 570de91a03..d13d88ee8e 100644 --- a/src/libs/clangsupport/pchmanagerserverproxy.h +++ b/src/libs/clangsupport/pchmanagerserverproxy.h @@ -47,6 +47,7 @@ class CLANGSUPPORT_EXPORT PchManagerServerProxy final : public BaseServerProxy, public PchManagerServerInterface { public: + explicit PchManagerServerProxy(PchManagerClientInterface *client, QLocalSocket *localSocket); explicit PchManagerServerProxy(PchManagerClientInterface *client, QIODevice *ioDevice); void end() override; diff --git a/src/libs/clangsupport/progresscounter.h b/src/libs/clangsupport/progresscounter.h index 449754f914..21a8e13b77 100644 --- a/src/libs/clangsupport/progresscounter.h +++ b/src/libs/clangsupport/progresscounter.h @@ -84,7 +84,7 @@ public: { Lock lock(m_mutex); - return m_total; + return m_progress; } private: diff --git a/src/libs/clangsupport/refactoringclientproxy.cpp b/src/libs/clangsupport/refactoringclientproxy.cpp index c207641844..646cb0e161 100644 --- a/src/libs/clangsupport/refactoringclientproxy.cpp +++ b/src/libs/clangsupport/refactoringclientproxy.cpp @@ -31,36 +31,28 @@ #include "clangrefactoringclientmessages.h" #include <QDebug> -#include <QIODevice> +#include <QLocalSocket> namespace ClangBackEnd { -RefactoringClientProxy::RefactoringClientProxy(RefactoringServerInterface *server, QIODevice *ioDevice) - : writeMessageBlock(ioDevice), - readMessageBlock(ioDevice), - server(server), - ioDevice(ioDevice) +RefactoringClientProxy::RefactoringClientProxy(RefactoringServerInterface *server, + QLocalSocket *localSocket) + : writeMessageBlock(localSocket) + , readMessageBlock(localSocket) + , server(server) { - QObject::connect(ioDevice, &QIODevice::readyRead, [this] () {RefactoringClientProxy::readMessages();}); + QObject::connect(localSocket, &QIODevice::readyRead, [this]() { + RefactoringClientProxy::readMessages(); + }); } -RefactoringClientProxy::RefactoringClientProxy(RefactoringClientProxy &&other) - : writeMessageBlock(std::move(other.writeMessageBlock)), - readMessageBlock(std::move(other.readMessageBlock)), - server(std::move(other.server)), - ioDevice(std::move(other.ioDevice)) +RefactoringClientProxy::RefactoringClientProxy(RefactoringServerInterface *server, + QIODevice *ioDevice) + : writeMessageBlock(ioDevice) + , readMessageBlock(ioDevice) + , server(server) { - -} - -RefactoringClientProxy &RefactoringClientProxy::operator=(RefactoringClientProxy &&other) -{ - writeMessageBlock = std::move(other.writeMessageBlock); - readMessageBlock = std::move(other.readMessageBlock); - server = std::move(other.server); - ioDevice = std::move(other.ioDevice); - - return *this; + QObject::connect(ioDevice, &QIODevice::readyRead, [this] () {RefactoringClientProxy::readMessages();}); } void RefactoringClientProxy::readMessages() diff --git a/src/libs/clangsupport/refactoringclientproxy.h b/src/libs/clangsupport/refactoringclientproxy.h index 45ce029120..07cba05e8d 100644 --- a/src/libs/clangsupport/refactoringclientproxy.h +++ b/src/libs/clangsupport/refactoringclientproxy.h @@ -39,12 +39,13 @@ class RefactoringServerInterface; class CLANGSUPPORT_EXPORT RefactoringClientProxy : public RefactoringClientInterface { public: + explicit RefactoringClientProxy(RefactoringServerInterface *server, QLocalSocket *localSocket); explicit RefactoringClientProxy(RefactoringServerInterface *server, QIODevice *ioDevice); RefactoringClientProxy(const RefactoringClientProxy&) = delete; const RefactoringClientProxy &operator=(const RefactoringClientProxy&) = delete; - RefactoringClientProxy(RefactoringClientProxy&&other); - RefactoringClientProxy &operator=(RefactoringClientProxy&&other); + RefactoringClientProxy(RefactoringClientProxy &&other) = default; + RefactoringClientProxy &operator=(RefactoringClientProxy &&other) = default; void readMessages(); @@ -60,7 +61,6 @@ private: ClangBackEnd::WriteMessageBlock writeMessageBlock; ClangBackEnd::ReadMessageBlock readMessageBlock; RefactoringServerInterface *server = nullptr; - QIODevice *ioDevice = nullptr; }; } // namespace ClangBackEnd diff --git a/src/libs/clangsupport/refactoringserverproxy.cpp b/src/libs/clangsupport/refactoringserverproxy.cpp index 3bc8fe20af..2208f3a0ce 100644 --- a/src/libs/clangsupport/refactoringserverproxy.cpp +++ b/src/libs/clangsupport/refactoringserverproxy.cpp @@ -34,7 +34,13 @@ namespace ClangBackEnd { -RefactoringServerProxy::RefactoringServerProxy(RefactoringClientInterface *client, QIODevice *ioDevice) +RefactoringServerProxy::RefactoringServerProxy(RefactoringClientInterface *client, + QLocalSocket *localSocket) + : BaseServerProxy(client, localSocket) +{} + +RefactoringServerProxy::RefactoringServerProxy(RefactoringClientInterface *client, + QIODevice *ioDevice) : BaseServerProxy(client, ioDevice) { } diff --git a/src/libs/clangsupport/refactoringserverproxy.h b/src/libs/clangsupport/refactoringserverproxy.h index 55ae20d441..34861767d8 100644 --- a/src/libs/clangsupport/refactoringserverproxy.h +++ b/src/libs/clangsupport/refactoringserverproxy.h @@ -47,6 +47,8 @@ class CLANGSUPPORT_EXPORT RefactoringServerProxy final : public BaseServerProxy, public RefactoringServerInterface { public: + explicit RefactoringServerProxy(RefactoringClientInterface *client, + QLocalSocket *localSocket = {}); explicit RefactoringServerProxy(RefactoringClientInterface *client, QIODevice *ioDevice); void end() override; diff --git a/src/libs/clangsupport/writemessageblock.cpp b/src/libs/clangsupport/writemessageblock.cpp index 999c63e9b1..b3fe4a51ed 100644 --- a/src/libs/clangsupport/writemessageblock.cpp +++ b/src/libs/clangsupport/writemessageblock.cpp @@ -29,16 +29,19 @@ #include <QDataStream> #include <QDebug> -#include <QIODevice> +#include <QLocalSocket> #include <QVariant> namespace ClangBackEnd { WriteMessageBlock::WriteMessageBlock(QIODevice *ioDevice) - : m_messageCounter(0), - m_ioDevice(ioDevice) -{ -} + : m_ioDevice(ioDevice) +{} + +WriteMessageBlock::WriteMessageBlock(QLocalSocket *localSocket) + : m_ioDevice(localSocket) + , m_localSocket(localSocket) +{} void WriteMessageBlock::write(const MessageEnvelop &message) { @@ -74,10 +77,19 @@ void WriteMessageBlock::resetState() void WriteMessageBlock::setIoDevice(QIODevice *ioDevice) { m_ioDevice = ioDevice; + if (m_localSocket != ioDevice) + m_localSocket = nullptr; flushBlock(); } +void WriteMessageBlock::setLocalSocket(QLocalSocket *localSocket) +{ + m_localSocket = localSocket; + + setIoDevice(localSocket); +} + void WriteMessageBlock::flushBlock() { if (m_ioDevice) { @@ -85,6 +97,8 @@ void WriteMessageBlock::flushBlock() m_block.clear(); if (bytesWritten == -1) qWarning() << "Failed to write data:" << m_ioDevice->errorString(); + if (m_localSocket) + m_localSocket->flush(); } } diff --git a/src/libs/clangsupport/writemessageblock.h b/src/libs/clangsupport/writemessageblock.h index b75f0ce294..8a126fed36 100644 --- a/src/libs/clangsupport/writemessageblock.h +++ b/src/libs/clangsupport/writemessageblock.h @@ -32,6 +32,7 @@ QT_BEGIN_NAMESPACE class QVariant; class QDataStream; class QIODevice; +class QLocalSocket; QT_END_NAMESPACE namespace ClangBackEnd { @@ -42,6 +43,7 @@ class WriteMessageBlock { public: WriteMessageBlock(QIODevice *ioDevice = nullptr); + WriteMessageBlock(QLocalSocket *localSocket); void write(const MessageEnvelop &message); @@ -50,13 +52,15 @@ public: void resetState(); void setIoDevice(QIODevice *ioDevice); + void setLocalSocket(QLocalSocket *localSocket); void flushBlock(); private: QByteArray m_block; - qint64 m_messageCounter; - QIODevice *m_ioDevice; + qint64 m_messageCounter = 0; + QIODevice *m_ioDevice = {}; + QLocalSocket *m_localSocket = {}; }; } // namespace ClangBackEnd |