diff --git a/src/plugins/qmldesigner/designercore/instances/connectionmanagerinterface.cpp b/src/plugins/qmldesigner/designercore/instances/connectionmanagerinterface.cpp index b4fdb707944..7e0114bd8e2 100644 --- a/src/plugins/qmldesigner/designercore/instances/connectionmanagerinterface.cpp +++ b/src/plugins/qmldesigner/designercore/instances/connectionmanagerinterface.cpp @@ -38,7 +38,6 @@ ConnectionManagerInterface::Connection::~Connection() = default; ConnectionManagerInterface::Connection::Connection(const QString &name, const QString &mode) : name{name} , mode{mode} - , timer{std::make_unique()} {} ConnectionManagerInterface::Connection::Connection(Connection &&connection) = default; @@ -49,7 +48,7 @@ void ConnectionManagerInterface::Connection::clear() socket.reset(); blockSize = 0; lastReadCommandCounter = 0; - timer->stop(); + timer.reset(); } } // namespace QmlDesigner diff --git a/src/plugins/qmldesigner/designercore/instances/interactiveconnectionmanager.cpp b/src/plugins/qmldesigner/designercore/instances/interactiveconnectionmanager.cpp index cd9b5fc5cfa..57b66a7f800 100644 --- a/src/plugins/qmldesigner/designercore/instances/interactiveconnectionmanager.cpp +++ b/src/plugins/qmldesigner/designercore/instances/interactiveconnectionmanager.cpp @@ -52,8 +52,10 @@ void InteractiveConnectionManager::setUp(NodeInstanceServerInterface *nodeInstan DesignerSettings settings = QmlDesignerPlugin::instance()->settings(); int timeOutTime = settings.value(DesignerSettingsKey::PUPPET_KILL_TIMEOUT).toInt(); - for (Connection &connection : connections()) + for (Connection &connection : connections()) { + connection.timer.reset(new QTimer); connection.timer->setInterval(timeOutTime); + } if (QmlDesignerPlugin::instance() ->settings()