summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/declarative/qml/qmlbindingvme.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/declarative/qml/qmlbindingvme.cpp b/src/declarative/qml/qmlbindingvme.cpp
index be4f5a9..16b0a21 100644
--- a/src/declarative/qml/qmlbindingvme.cpp
+++ b/src/declarative/qml/qmlbindingvme.cpp
@@ -897,9 +897,11 @@ void QmlBindingVME::run(const char *programData, int instrIndex,
{
int type = registers[instr->cleanup.reg].gettype();
if (type == qMetaTypeId<QVariant>()) {
- ((QVariant *)registers[instr->cleanup.reg].typeDataPtr())->~QVariant();
+ registers[instr->cleanup.reg].getvariantptr()->~QVariant();
} else if (type == QMetaType::QString) {
- ((QString *)registers[instr->cleanup.reg].typeDataPtr())->~QString();
+ registers[instr->cleanup.reg].getstringptr()->~QString();
+ } else if (type == QMetaType::QUrl) {
+ registers[instr->cleanup.reg].geturlptr()->~QUrl();
}
}
break;