From ae9afa6b9ebcdbaef5e0fea5091aab1a667fa3ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Fri, 6 Jan 2012 12:17:30 +0100 Subject: Remove wrong assert from QMetaType. We can't assert that QMetaType helper arrays are initialized. In rare situations it may happen that QMetaType compiled without support for an external type (without compiled Gui or Widgets libraries) will be asked for additional information for the type. For example (assuming Qt is compiled with --no-gui): // typeId it may be received over network (QMetaType::QImage) void *ptr = QMetaType::create(typeId); Change-Id: I018a59b23def35c7574e7c921019b5db4f06e800 Reviewed-by: Thiago Macieira Reviewed-by: Olivier Goffart --- src/corelib/kernel/qmetatype.cpp | 6 ------ 1 file changed, 6 deletions(-) (limited to 'src') diff --git a/src/corelib/kernel/qmetatype.cpp b/src/corelib/kernel/qmetatype.cpp index 7132a099a2..112dfe92e6 100644 --- a/src/corelib/kernel/qmetatype.cpp +++ b/src/corelib/kernel/qmetatype.cpp @@ -1435,12 +1435,10 @@ class TypeConstructor { { QMetaType::Constructor ctor = 0; if (QTypeModuleInfo::IsGui) { - Q_ASSERT(qMetaTypeGuiHelper); if (!qMetaTypeGuiHelper) return 0; ctor = qMetaTypeGuiHelper[type - QMetaType::FirstGuiType].constructor; } else if (QTypeModuleInfo::IsWidget) { - Q_ASSERT(qMetaTypeWidgetsHelper); if (!qMetaTypeWidgetsHelper) return 0; ctor = qMetaTypeWidgetsHelper[type - QMetaType::FirstWidgetsType].constructor; @@ -1527,12 +1525,10 @@ class TypeDestructor { { QMetaType::Destructor dtor = 0; if (QTypeModuleInfo::IsGui) { - Q_ASSERT(qMetaTypeGuiHelper); if (!qMetaTypeGuiHelper) return; dtor = qMetaTypeGuiHelper[type - QMetaType::FirstGuiType].destructor; } else if (QTypeModuleInfo::IsWidget) { - Q_ASSERT(qMetaTypeWidgetsHelper); if (!qMetaTypeWidgetsHelper) return; dtor = qMetaTypeWidgetsHelper[type - QMetaType::FirstWidgetsType].destructor; @@ -1601,12 +1597,10 @@ class SizeOf { static int Size(const int type) { if (QTypeModuleInfo::IsGui) { - Q_ASSERT(qMetaTypeGuiHelper); if (!qMetaTypeGuiHelper) return 0; return qMetaTypeGuiHelper[type - QMetaType::FirstGuiType].size; } else if (QTypeModuleInfo::IsWidget) { - Q_ASSERT(qMetaTypeWidgetsHelper); if (!qMetaTypeWidgetsHelper) return 0; return qMetaTypeWidgetsHelper[type - QMetaType::FirstWidgetsType].size; -- cgit v1.2.3