Qml Tooling: Replace bare pointers with QScopedPointer
This way we don't have to manually initialize and delete them. Change-Id: I0104c744dba380e957271d0924498e3643856e9e Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
This commit is contained in:
parent
131243b3c8
commit
a88ca87497
|
@ -141,10 +141,6 @@ ExecutionEngine::ExecutionEngine(EvalISelFactory *factory)
|
|||
, m_engineId(engineSerial.fetchAndAddOrdered(1))
|
||||
, regExpCache(0)
|
||||
, m_multiplyWrappedQObjects(0)
|
||||
#ifndef QT_NO_QML_DEBUGGER
|
||||
, m_debugger(0)
|
||||
, m_profiler(0)
|
||||
#endif
|
||||
{
|
||||
memoryManager = new QV4::MemoryManager(this);
|
||||
|
||||
|
@ -477,12 +473,6 @@ ExecutionEngine::ExecutionEngine(EvalISelFactory *factory)
|
|||
|
||||
ExecutionEngine::~ExecutionEngine()
|
||||
{
|
||||
#ifndef QT_NO_QML_DEBUGGER
|
||||
delete m_debugger;
|
||||
m_debugger = 0;
|
||||
delete m_profiler;
|
||||
m_profiler = 0;
|
||||
#endif
|
||||
delete m_multiplyWrappedQObjects;
|
||||
m_multiplyWrappedQObjects = 0;
|
||||
delete identifierTable;
|
||||
|
@ -508,13 +498,13 @@ ExecutionEngine::~ExecutionEngine()
|
|||
void ExecutionEngine::setDebugger(Debugging::Debugger *debugger)
|
||||
{
|
||||
Q_ASSERT(!m_debugger);
|
||||
m_debugger = debugger;
|
||||
m_debugger.reset(debugger);
|
||||
}
|
||||
|
||||
void ExecutionEngine::setProfiler(Profiling::Profiler *profiler)
|
||||
{
|
||||
Q_ASSERT(!m_profiler);
|
||||
m_profiler = profiler;
|
||||
m_profiler.reset(profiler);
|
||||
}
|
||||
#endif // QT_NO_QML_DEBUGGER
|
||||
|
||||
|
|
|
@ -353,8 +353,8 @@ public:
|
|||
void setDebugger(Debugging::Debugger *) {}
|
||||
void setProfiler(Profiling::Profiler *) {}
|
||||
#else
|
||||
QV4::Debugging::Debugger *debugger() const { return m_debugger; }
|
||||
QV4::Profiling::Profiler *profiler() const { return m_profiler; }
|
||||
QV4::Debugging::Debugger *debugger() const { return m_debugger.data(); }
|
||||
QV4::Profiling::Profiler *profiler() const { return m_profiler.data(); }
|
||||
|
||||
void setDebugger(Debugging::Debugger *debugger);
|
||||
void setProfiler(Profiling::Profiler *profiler);
|
||||
|
@ -464,8 +464,8 @@ private:
|
|||
void failStackLimitCheck(Scope &scope);
|
||||
|
||||
#ifndef QT_NO_QML_DEBUGGER
|
||||
QV4::Debugging::Debugger *m_debugger;
|
||||
QV4::Profiling::Profiler *m_profiler;
|
||||
QScopedPointer<QV4::Debugging::Debugger> m_debugger;
|
||||
QScopedPointer<QV4::Profiling::Profiler> m_profiler;
|
||||
#endif
|
||||
};
|
||||
|
||||
|
|
|
@ -962,6 +962,14 @@ void QQmlTypeLoader::invalidate()
|
|||
#endif // qml_network
|
||||
}
|
||||
|
||||
#ifndef QT_NO_QML_DEBUGGER
|
||||
void QQmlTypeLoader::setProfiler(QQmlProfiler *profiler)
|
||||
{
|
||||
Q_ASSERT(!m_profiler);
|
||||
m_profiler.reset(profiler);
|
||||
}
|
||||
#endif
|
||||
|
||||
void QQmlTypeLoader::lock()
|
||||
{
|
||||
m_thread->lock();
|
||||
|
@ -1596,9 +1604,6 @@ Constructs a new type loader that uses the given \a engine.
|
|||
*/
|
||||
QQmlTypeLoader::QQmlTypeLoader(QQmlEngine *engine)
|
||||
: m_engine(engine), m_thread(new QQmlTypeLoaderThread(this)),
|
||||
#ifndef QT_NO_QML_DEBUGGER
|
||||
m_profiler(nullptr),
|
||||
#endif
|
||||
m_typeCacheTrimThreshold(TYPELOADER_MINIMUM_TRIM_THRESHOLD)
|
||||
{
|
||||
}
|
||||
|
@ -1615,10 +1620,6 @@ QQmlTypeLoader::~QQmlTypeLoader()
|
|||
clearCache();
|
||||
|
||||
invalidate();
|
||||
|
||||
#ifndef QT_NO_QML_DEBUGGER
|
||||
delete m_profiler;
|
||||
#endif
|
||||
}
|
||||
|
||||
QQmlImportDatabase *QQmlTypeLoader::importDatabase() const
|
||||
|
|
|
@ -249,7 +249,7 @@ private:
|
|||
QString m_location;
|
||||
};
|
||||
|
||||
class Q_AUTOTEST_EXPORT QQmlTypeLoader
|
||||
class Q_QML_PRIVATE_EXPORT QQmlTypeLoader
|
||||
{
|
||||
Q_DECLARE_TR_FUNCTIONS(QQmlTypeLoader)
|
||||
public:
|
||||
|
@ -325,8 +325,8 @@ public:
|
|||
QQmlProfiler *profiler() const { return nullptr; }
|
||||
void setProfiler(QQmlProfiler *) {}
|
||||
#else
|
||||
QQmlProfiler *profiler() const { return m_profiler; }
|
||||
void setProfiler(QQmlProfiler *profiler) { Q_ASSERT(!m_profiler); m_profiler = profiler; }
|
||||
QQmlProfiler *profiler() const { return m_profiler.data(); }
|
||||
void setProfiler(QQmlProfiler *profiler);
|
||||
#endif // QT_NO_QML_DEBUGGER
|
||||
|
||||
|
||||
|
@ -380,7 +380,7 @@ private:
|
|||
QQmlTypeLoaderThread *m_thread;
|
||||
|
||||
#ifndef QT_NO_QML_DEBUGGER
|
||||
QQmlProfiler *m_profiler;
|
||||
QScopedPointer<QQmlProfiler> m_profiler;
|
||||
#endif
|
||||
|
||||
#if QT_CONFIG(qml_network)
|
||||
|
|
Loading…
Reference in New Issue