[I] Starting Purify'd c:\qt\projects\qtbug22296\debug\qtbug22296.exe at 1/14/2014 14:44:16 [I] Starting main [W] UMR: Uninitialized memory read in QEvent::QEvent(Type::QEvent) {1 occurrence} [I] Starting thread 0x10a8: myThread(void *) [I] Starting thread 0xfb8: myThread(void *) [W] UMR: Uninitialized memory read in QTWTF::PtrAndFlagsBase::set(Structure::QTJSC *) {2 occurrences} Reading 4 bytes from 0x065746b0 (4 bytes at 0x065746b0 uninitialized) Address 0x065746b0 is 40 bytes into a 80 byte block at 0x06574688 Address 0x065746b0 points to a malloc'd block in heap 0x06670000 Thread ID: 0x10a8 Error location QTWTF::PtrAndFlagsBase::set(Structure::QTJSC *) [c:\qt\qt-5-vs\qt\qtscript\src\3rdparty\javascriptcore\javascriptcore\wtf\ptrandflags.h:46] void set(T* ptr) { ASSERT(!(reinterpret_cast(ptr) & 3)); => m_ptrAndFlags = reinterpret_cast(ptr) | (m_ptrAndFlags & 3); #ifndef NDEBUG m_leaksPtr = ptr; #endif QTJSC::StructureTransitionTable::StructureTransitionTable(void) [c:\qt\qt-5-vs\qt\qtscript\src\3rdparty\javascriptcore\javascriptcore\runtime\structuretransitiontable.h:104] }; public: StructureTransitionTable() { => m_transitions.m_singleTransition.set(0); m_transitions.m_singleTransition.setFlag(usingSingleSlot); } QTJSC::Structure::Structure(JSValue::QTJSC,TypeInfo::QTJSC const&) [c:\qt\qt-5-vs\qt\qtscript\src\3rdparty\javascriptcore\javascriptcore\runtime\structure.cpp:137] , m_hasGetterSetterProperties(false) , m_attributesInPrevious(0) , m_specificFunctionThrashCount(0) => { ASSERT(m_prototype); ASSERT(m_prototype.isObject() || m_prototype.isNull()); QTJSC::Structure::create(JSValue::QTJSC,TypeInfo::QTJSC const&) [c:\qt\qt-5-vs\qt\qtscript\src\3rdparty\javascriptcore\javascriptcore\runtime\structure.h:65] friend class StructureTransitionTable; static PassRefPtr create(JSValue prototype, const TypeInfo& typeInfo) { => return adoptRef(new Structure(prototype, typeInfo)); } static void startIgnoringLeaks(); QTJSC::JSArray::createStructure(JSValue::QTJSC) [c:\qt\qt-5-vs\qt\qtscript\src\3rdparty\javascriptcore\javascriptcore\runtime\jsarray.h:91] static PassRefPtr createStructure(JSValue prototype) { => return Structure::create(prototype, TypeInfo(ObjectType, StructureFlags)); } inline void markChildrenDirect(MarkStack& markStack); QTJSC::JSGlobalData::storeVPtrs(void) [c:\qt\qt-5-vs\qt\qtscript\src\3rdparty\javascriptcore\javascriptcore\runtime\jsglobaldata.cpp:85] void* storage = &cell; COMPILE_ASSERT(sizeof(JSArray) <= sizeof(CollectorCell), sizeof_JSArray_must_be_less_than_CollectorCell); => JSCell* jsArray = new (storage) JSArray(JSArray::createStructure(jsNull())); JSGlobalData::jsArrayVPtr = jsArray->vptr(); jsArray->~JSCell(); QTJSC::initializeThreadingOnce [c:\qt\qt-5-vs\qt\qtscript\src\3rdparty\javascriptcore\javascriptcore\runtime\initializethreading.cpp:52] QTJSC::initializeThreading(void) [c:\qt\qt-5-vs\qt\qtscript\src\3rdparty\javascriptcore\javascriptcore\runtime\initializethreading.cpp:66] #else static bool initializedThreading = false; if (!initializedThreading) { => initializeThreadingOnce(); initializedThreading = true; } #endif QScriptEnginePrivate::QScriptEnginePrivate(void) [c:\qt\qt-5-vs\qt\qtscript\src\script\api\qscriptengine.cpp:988] qFatal("QScriptEngine: Must construct a Q(Core)Application before a QScriptEngine"); return; } => JSC::initializeThreading(); JSC::IdentifierTable *oldTable = JSC::currentIdentifierTable(); globalData = JSC::JSGlobalData::create().releaseRef(); globalData->clientData = new QScript::GlobalClientData(this); QScriptEngine::QScriptEngine(void) [c:\qt\qt-5-vs\qt\qtscript\src\script\api\qscriptengine.cpp:2048] Allocation location malloc [f:\dd\vctools\crt_bld\self_x86\crt\src\dbgmalloc.c:55] QTWTF::fastMalloc(UINT) [c:\qt\qt-5-vs\qt\qtscript\src\3rdparty\javascriptcore\javascriptcore\wtf\fastmalloc.cpp:244] void* result; returnValue.getValue(result); #else => void* result = malloc(n); #endif if (!result) QTWTF::FastAllocBase::new(UINT) [c:\qt\qt-5-vs\qt\qtscript\src\3rdparty\javascriptcore\javascriptcore\wtf\fastallocbase.h:96] void* operator new(size_t size) { => void* p = fastMalloc(size); fastMallocMatchValidateMalloc(p, Internal::AllocTypeClassNew); return p; } QTJSC::Structure::create(JSValue::QTJSC,TypeInfo::QTJSC const&) [c:\qt\qt-5-vs\qt\qtscript\src\3rdparty\javascriptcore\javascriptcore\runtime\structure.h:65] friend class StructureTransitionTable; static PassRefPtr create(JSValue prototype, const TypeInfo& typeInfo) { => return adoptRef(new Structure(prototype, typeInfo)); } static void startIgnoringLeaks(); QTJSC::JSArray::createStructure(JSValue::QTJSC) [c:\qt\qt-5-vs\qt\qtscript\src\3rdparty\javascriptcore\javascriptcore\runtime\jsarray.h:91] static PassRefPtr createStructure(JSValue prototype) { => return Structure::create(prototype, TypeInfo(ObjectType, StructureFlags)); } inline void markChildrenDirect(MarkStack& markStack); QTJSC::JSGlobalData::storeVPtrs(void) [c:\qt\qt-5-vs\qt\qtscript\src\3rdparty\javascriptcore\javascriptcore\runtime\jsglobaldata.cpp:85] void* storage = &cell; COMPILE_ASSERT(sizeof(JSArray) <= sizeof(CollectorCell), sizeof_JSArray_must_be_less_than_CollectorCell); => JSCell* jsArray = new (storage) JSArray(JSArray::createStructure(jsNull())); JSGlobalData::jsArrayVPtr = jsArray->vptr(); jsArray->~JSCell(); QTJSC::initializeThreadingOnce [c:\qt\qt-5-vs\qt\qtscript\src\3rdparty\javascriptcore\javascriptcore\runtime\initializethreading.cpp:52] { WTF::initializeThreading(); initializeUString(); => JSGlobalData::storeVPtrs(); #if ENABLE(JSC_MULTIPLE_THREADS) s_dtoaP5Mutex = new Mutex; initializeDates(); QTJSC::initializeThreading(void) [c:\qt\qt-5-vs\qt\qtscript\src\3rdparty\javascriptcore\javascriptcore\runtime\initializethreading.cpp:66] #else static bool initializedThreading = false; if (!initializedThreading) { => initializeThreadingOnce(); initializedThreading = true; } #endif QScriptEnginePrivate::QScriptEnginePrivate(void) [c:\qt\qt-5-vs\qt\qtscript\src\script\api\qscriptengine.cpp:988] qFatal("QScriptEngine: Must construct a Q(Core)Application before a QScriptEngine"); return; } => JSC::initializeThreading(); JSC::IdentifierTable *oldTable = JSC::currentIdentifierTable(); globalData = JSC::JSGlobalData::create().releaseRef(); globalData->clientData = new QScript::GlobalClientData(this); QScriptEngine::QScriptEngine(void) [c:\qt\qt-5-vs\qt\qtscript\src\script\api\qscriptengine.cpp:2048] [W] UMR: Uninitialized memory read in QTWTF::PtrAndFlagsBase::set(Structure::QTJSC *) {2 occurrences} [W] UMR: Uninitialized memory read in QTWTF::PtrAndFlagsBase::set(Structure::QTJSC *) {1 occurrence} [I] Starting thread 0xac8: qt_adopted_thread_watcher_function(void *) [W] UMR: Uninitialized memory read in QTWTF::PtrAndFlagsBase::set(Structure::QTJSC *) {2 occurrences} [W] UMR: Uninitialized memory read in QTWTF::PtrAndFlagsBase::set(Structure::QTJSC *) {1 occurrence} [W] UMR: Uninitialized memory read in QTWTF::PtrAndFlagsBase::set(Structure::QTJSC *) {1 occurrence} [W] UMR: Uninitialized memory read in QTWTF::PtrAndFlagsBase::set(Structure::QTJSC *) {1 occurrence} [W] UMR: Uninitialized memory read in QTWTF::PtrAndFlagsBase::set(Structure::QTJSC *) {1 occurrence} [W] UMR: Uninitialized memory read in QTWTF::PtrAndFlagsBase::set(Structure::QTJSC *) {1 occurrence} [W] UMR: Uninitialized memory read in QTWTF::PtrAndFlagsBase::set(Structure::QTJSC *) {1 occurrence} [W] UMR: Uninitialized memory read in QTWTF::PtrAndFlagsBase::set(Structure::QTJSC *) {1 occurrence} [W] UMR: Uninitialized memory read in QTWTF::PtrAndFlagsBase::set(Structure::QTJSC *) {1 occurrence} [W] UMR: Uninitialized memory read in QTWTF::PtrAndFlagsBase::set(Structure::QTJSC *) {1 occurrence} [E] EXU: Unhandled exception in QTWTF::Vector::removeLast(void) {1 occurrence}