summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/declarative/qml/qdeclarativevme.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/declarative/qml/qdeclarativevme.cpp b/src/declarative/qml/qdeclarativevme.cpp
index 0117880..2d1a549 100644
--- a/src/declarative/qml/qdeclarativevme.cpp
+++ b/src/declarative/qml/qdeclarativevme.cpp
@@ -246,7 +246,12 @@ QObject *QDeclarativeVME::run(QDeclarativeVMEStack<QObject *> &stack,
{
QObject *o = (QObject *)operator new(instr.createSimple.typeSize +
sizeof(QDeclarativeDeclarativeData));
- ::bzero(o, instr.createSimple.typeSize + sizeof(QDeclarativeDeclarativeData));
+#if defined(Q_OS_WIN32) || defined(Q_OS_WINCE)
+ ::memset(o, 0, instr.createSimple.typeSize + sizeof(QDeclarativeDeclarativeData));
+#else
+ // faster than memset
+ ::bzero(o, instr.createSimple.typeSize + sizeof(QDeclarativeDeclarativeData));
+#endif
instr.createSimple.create(o);
QDeclarativeDeclarativeData *ddata =