diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/corelib/kernel/qmetatype.h | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/corelib/kernel/qmetatype.h b/src/corelib/kernel/qmetatype.h index 660807c698..156c52bce2 100644 --- a/src/corelib/kernel/qmetatype.h +++ b/src/corelib/kernel/qmetatype.h @@ -152,24 +152,24 @@ void qMetaTypeDeleteHelper(T *t) template <typename T> void *qMetaTypeCreateHelper(const T *t) { - if (!t) - return new T(); - return new T(*static_cast<const T*>(t)); + if (t) + return new T(*static_cast<const T*>(t)); + return new T(); } template <typename T> void qMetaTypeDestructHelper(T *t) { + Q_UNUSED(t) // Silence MSVC that warns for POD types. t->~T(); } template <typename T> void *qMetaTypeConstructHelper(void *where, const T *t) { - if (!t) - return new (where) T; - else + if (t) return new (where) T(*static_cast<const T*>(t)); + return new (where) T; } #ifndef QT_NO_DATASTREAM |