aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@qt.io>2023-01-13 15:00:56 +0100
committerUlf Hermann <ulf.hermann@qt.io>2023-01-16 09:49:17 +0100
commit7b0b09d87c36dfc67f0488d1ad87d720f721dea4 (patch)
tree0d23b51c4aef4b0bbc3b0dc26a34cf5e5f754392 /tools
parentaae67e762d406210d3e847bbc510677c00bcc78f (diff)
qmlls, qmllint: Avoid memory leaks
Pick-to: 6.5 Fixes: QTBUG-104643 Change-Id: I5ca0fea2ef6f822b70c08bc6e49f0d07a732b299 Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
Diffstat (limited to 'tools')
-rw-r--r--tools/qmlls/qmllanguageservertool.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/tools/qmlls/qmllanguageservertool.cpp b/tools/qmlls/qmllanguageservertool.cpp
index ee49706adc..896e0c049c 100644
--- a/tools/qmlls/qmllanguageservertool.cpp
+++ b/tools/qmlls/qmllanguageservertool.cpp
@@ -214,16 +214,16 @@ int main(int argv, char *argc[])
(parser.isSet(ignoreSettings) ? nullptr : &settings));
if (parser.isSet(buildDirOption))
qmlServer.codeModel()->setBuildPathsForRootUrl(QByteArray(), parser.values(buildDirOption));
- StdinReader *r = new StdinReader;
- QObject::connect(r, &StdinReader::receivedData, qmlServer.server(),
- &QLanguageServer::receiveData);
- QObject::connect(r, &StdinReader::eof, &app, []() {
- QTimer::singleShot(100, []() {
+ StdinReader r;
+ QObject::connect(&r, &StdinReader::receivedData,
+ qmlServer.server(), &QLanguageServer::receiveData);
+ QObject::connect(&r, &StdinReader::eof, &app, [&app]() {
+ QTimer::singleShot(100, &app, []() {
QCoreApplication::processEvents();
QCoreApplication::exit();
});
});
- QThreadPool::globalInstance()->start([r]() { r->run(); });
+ QThreadPool::globalInstance()->start([&r]() { r.run(); });
app.exec();
return qmlServer.returnValue();
}