summaryrefslogtreecommitdiffstats
path: root/src/xml
diff options
context:
space:
mode:
Diffstat (limited to 'src/xml')
-rw-r--r--src/xml/dom/qdomhelpers.cpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/xml/dom/qdomhelpers.cpp b/src/xml/dom/qdomhelpers.cpp
index 48dd0776f3..264a17de3d 100644
--- a/src/xml/dom/qdomhelpers.cpp
+++ b/src/xml/dom/qdomhelpers.cpp
@@ -45,6 +45,7 @@
#include "qdom_p.h"
#include "qxmlstream.h"
+#include <memory>
#include <stack>
QT_BEGIN_NAMESPACE
@@ -129,23 +130,23 @@ bool QDomBuilder::characters(const QString &characters, bool cdata)
if (node == doc)
return false;
- QScopedPointer<QDomNodePrivate> n;
+ std::unique_ptr<QDomNodePrivate> n;
if (cdata) {
n.reset(doc->createCDATASection(characters));
} else if (!entityName.isEmpty()) {
- QScopedPointer<QDomEntityPrivate> e(
- new QDomEntityPrivate(doc, nullptr, entityName, QString(), QString(), QString()));
+ auto e = std::make_unique<QDomEntityPrivate>(
+ doc, nullptr, entityName, QString(), QString(), QString());
e->value = characters;
e->ref.deref();
- doc->doctype()->appendChild(e.data());
- e.take();
+ doc->doctype()->appendChild(e.get());
+ Q_UNUSED(e.release());
n.reset(doc->createEntityReference(entityName));
} else {
n.reset(doc->createTextNode(characters));
}
n->setLocation(int(reader->lineNumber()), int(reader->columnNumber()));
- node->appendChild(n.data());
- n.take();
+ node->appendChild(n.get());
+ Q_UNUSED(n.release());
return true;
}