aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorIvan Komissarov <abbapoh@gmail.com>2021-05-13 00:36:44 +0200
committerIvan Komissarov <ABBAPOH@gmail.com>2021-05-13 13:25:48 +0000
commit19913abe592d1fb7c3f2dd721e8268dee087be80 (patch)
tree889536cf694a228fd0b1153ce2d92e0124fa5cea /src
parent8d304da7be15a62314aa73625da5aa3ff11bbd60 (diff)
Use std::unique_ptr in qbs::Internal::Process
Allows to make dtor trivial Change-Id: I08e8ab2559a6b6314c6bbb523869deb9d20f53d9 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Diffstat (limited to 'src')
-rw-r--r--src/lib/corelib/jsextensions/process.cpp13
1 files changed, 3 insertions, 10 deletions
diff --git a/src/lib/corelib/jsextensions/process.cpp b/src/lib/corelib/jsextensions/process.cpp
index 8ddb48acd..8257be6dc 100644
--- a/src/lib/corelib/jsextensions/process.cpp
+++ b/src/lib/corelib/jsextensions/process.cpp
@@ -66,7 +66,6 @@ class Process : public QObject, public QScriptable, public ResourceAcquiringScri
public:
static QScriptValue ctor(QScriptContext *context, QScriptEngine *engine);
Process(QScriptContext *context);
- ~Process() override;
Q_INVOKABLE QString getEnv(const QString &name);
Q_INVOKABLE void setEnv(const QString &name, const QString &value);
@@ -103,7 +102,7 @@ private:
// ResourceAcquiringScriptObject implementation
void releaseResources() override;
- QProcess *m_qProcess = nullptr;
+ std::unique_ptr<QProcess> m_qProcess;
QProcessEnvironment m_environment;
QString m_workingDirectory;
QTextCodec *m_codec = nullptr;
@@ -144,17 +143,12 @@ QScriptValue Process::ctor(QScriptContext *context, QScriptEngine *engine)
return obj;
}
-Process::~Process()
-{
- delete m_qProcess;
-}
-
Process::Process(QScriptContext *context)
{
Q_UNUSED(context);
Q_ASSERT(thisObject().engine() == engine());
- m_qProcess = new QProcess;
+ m_qProcess = std::make_unique<QProcess>();
m_codec = QTextCodec::codecForName("UTF-8");
}
@@ -236,8 +230,7 @@ void Process::close()
if (!m_qProcess)
return;
Q_ASSERT(thisObject().engine() == engine());
- delete m_qProcess;
- m_qProcess = nullptr;
+ m_qProcess.reset();
}
bool Process::waitForFinished(int msecs)