diff options
author | Ulf Hermann <ulf.hermann@qt.io> | 2019-11-22 13:35:36 +0100 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@qt.io> | 2019-11-23 17:20:00 +0100 |
commit | 16683799681578d076c46b71f77d326ac304cc6e (patch) | |
tree | fc1264c6e6bbed9d671222628360629752f63ca3 /src/qml/qmldirparser/qqmldirparser.cpp | |
parent | b7030c2efb90fd1109166d8d476aeab7194c41e1 (diff) |
QQmlDirParser: Fix lifecycle management
Remove pointless ctor and dtor, provide a clear() method that actually
clears everything, call that explicitly where needed.
Task-number: QTBUG-30467
Change-Id: I67c632af3a7a76d1d1a706a5ab6d1c446240405c
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/qmldirparser/qqmldirparser.cpp')
-rw-r--r-- | src/qml/qmldirparser/qqmldirparser.cpp | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/src/qml/qmldirparser/qqmldirparser.cpp b/src/qml/qmldirparser/qqmldirparser.cpp index 5bf33d3602..047323a3d4 100644 --- a/src/qml/qmldirparser/qqmldirparser.cpp +++ b/src/qml/qmldirparser/qqmldirparser.cpp @@ -73,12 +73,18 @@ static bool parseVersion(const QString &str, int *major, int *minor) return false; } -QQmlDirParser::QQmlDirParser() : _designerSupported(false) -{ -} - -QQmlDirParser::~QQmlDirParser() +void QQmlDirParser::clear() { + _errors.clear(); + _typeNamespace.clear(); + _components.clear(); + _dependencies.clear(); + _imports.clear(); + _scripts.clear(); + _plugins.clear(); + _designerSupported = false; + _typeInfos.clear(); + _className.clear(); } inline static void scanSpace(const QChar *&ch) { @@ -101,13 +107,6 @@ inline static void scanWord(const QChar *&ch) { */ bool QQmlDirParser::parse(const QString &source) { - _errors.clear(); - _plugins.clear(); - _components.clear(); - _scripts.clear(); - _designerSupported = false; - _className.clear(); - quint16 lineNumber = 0; bool firstLine = true; |