-
Bug
-
Resolution: Incomplete
-
Not Evaluated
-
None
-
5.0.0 Beta 2
-
None
-
Windows7 64bit, MSVC2010, Qt 5.0.0 rc 362 from http://releases.qt-project.org/digia/5.0.0_rc1/backups/2012-12-03-362/single/qt-everywhere-opensource-src-5.0.0-rc1.7z
My program embeds a QWebView, I use my own QNetworkAccessManager subclass to replace the default one, but it gets crash frequently at the following code:
QNetworkReply* NetworkServiceManager::createRequest ( Operation op, const QNetworkRequest & req, QIODevice * outgoingData /*= 0*/ ) { #ifndef QT_NO_OPENSSL if (req.url().scheme() == "https") { QNetworkRequest request = req; // copy so we can modify #ifdef Q_WS_WIN request.setRawHeader("User-Agent", "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)"); #else request.setRawHeader("User-Agent", "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/12.0.703.0 Safari/534.24"); #endif request.setSslConfiguration(SslConfig(req.url())); return QNetworkAccessManager::createRequest(op, request, outgoingData); } else #endif { return QNetworkAccessManager::createRequest(op, req, outgoingData); } }
From the call stack, I know it crashes at the last QNetworkAccessManager::createRequest call. The call stack is shown below:
0:000:x86> kn # ChildEBP RetAddr WARNING: Stack unwind information not available. Following frames may be wrong. 00 002eb6a8 62dacf82 ntdll32!ZwRaiseException+0x12 01 002eb6e8 595678ac MSVCR100D!CxxThrowException+0x52 02 002eb704 595c63e3 Qt5Cored!qBadAlloc+0x1c [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\global\qglobal.cpp @ 1932] 03 002eb718 6098ec92 Qt5Cored!QListData::detach+0x33 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\tools\qlist.cpp @ 129] 04 002eb730 609dcf51 Qt5Networkd!QList<QPair<QByteArray,QByteArray> >::detach_helper+0x22 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\tools\qlist.h @ 694] 05 002eb740 609dce87 Qt5Networkd!QList<QPair<QByteArray,QByteArray> >::reserve+0x31 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\tools\qlist.h @ 486] 06 002eb75c 609dc1a0 Qt5Networkd!operator>><QPair<QByteArray,QByteArray> >+0x27 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\io\qdatastream.h @ 234] 07 002eb76c 609dc100 Qt5Networkd!QNetworkCacheMetaDataPrivate::load+0x90 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\network\access\qabstractnetworkcache.cpp @ 405] 08 002eb77c 609df7d7 Qt5Networkd!operator>>+0x10 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\network\access\qabstractnetworkcache.cpp @ 367] 09 002eb7d8 609de5b2 Qt5Networkd!QCacheItem::read+0x87 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\network\access\qnetworkdiskcache.cpp @ 710] 0a 002eb800 609de534 Qt5Networkd!QNetworkDiskCache::fileMetaData+0x62 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\network\access\qnetworkdiskcache.cpp @ 390] 0b 002eb824 609cf11d Qt5Networkd!QNetworkDiskCache::metaData+0x74 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\network\access\qnetworkdiskcache.cpp @ 373] 0c 002eb98c 609d0a08 Qt5Networkd!QNetworkReplyHttpImplPrivate::loadFromCacheIfAllowed+0x22d [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\network\access\qnetworkreplyhttpimpl.cpp @ 488] 0d 002ebd70 609d3e69 Qt5Networkd!QNetworkReplyHttpImplPrivate::postRequest+0xd68 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\network\access\qnetworkreplyhttpimpl.cpp @ 679] 0e 002ebdb8 609d438a Qt5Networkd!QNetworkReplyHttpImplPrivate::start+0x39 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\network\access\qnetworkreplyhttpimpl.cpp @ 1522] 0f 002ebfa0 609ce566 Qt5Networkd!QNetworkReplyHttpImplPrivate::_q_startOperation+0x39a [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\network\access\qnetworkreplyhttpimpl.cpp @ 1572] 10 002ec18c 609aa07b Qt5Networkd!QNetworkReplyHttpImpl::QNetworkReplyHttpImpl+0x756 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\network\access\qnetworkreplyhttpimpl.cpp @ 242] 11 002ec300 65fb2391 Qt5Networkd!QNetworkAccessManager::createRequest+0x68b [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\network\access\qnetworkaccessmanager.cpp @ 1060] 12 002ec360 609a93ac CoreLib1!NetworkServiceManager::createRequest+0x181 [d:\shareware\sansasori\src\corelib\network\networkservicemanager.cpp @ 112] 13 002ec378 103c3300 Qt5Networkd!QNetworkAccessManager::get+0x1c [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\network\access\qnetworkaccessmanager.cpp @ 659] 14 002ec400 103c3575 Qt5WebKitd!WebCore::QNetworkReplyHandler::sendNetworkRequest+0x140 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\platform\network\qt\qnetworkreplyhandler.cpp @ 732] 15 002ec444 103c0fa4 Qt5WebKitd!WebCore::QNetworkReplyHandler::start+0x65 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\platform\network\qt\qnetworkreplyhandler.cpp @ 771] 16 002ec450 103c0dde Qt5WebKitd!WebCore::QNetworkReplyHandlerCallQueue::flush+0x54 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\platform\network\qt\qnetworkreplyhandler.cpp @ 249] 17 002ec45c 103c1af8 Qt5WebKitd!WebCore::QNetworkReplyHandlerCallQueue::push+0x1e [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\platform\network\qt\qnetworkreplyhandler.cpp @ 216] 18 002ec478 1077f6c0 Qt5WebKitd!WebCore::QNetworkReplyHandler::QNetworkReplyHandler+0x1b8 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\platform\network\qt\qnetworkreplyhandler.cpp @ 452] 19 002ec4cc 10774fbc Qt5WebKitd!WebCore::ResourceHandle::start+0x120 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\platform\network\qt\resourcehandleqt.cpp @ 111] 1a 002ec520 1046c05f Qt5WebKitd!WebCore::ResourceHandle::create+0x15c [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\platform\network\resourcehandle.cpp @ 81] 1b 002ec548 1043b98e Qt5WebKitd!WebCore::ResourceLoader::start+0x1df [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\loader\resourceloader.cpp @ 170] 1c 002ec574 1043b4f8 Qt5WebKitd!WebCore::ResourceLoadScheduler::servePendingRequests+0x16e [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\loader\resourceloadscheduler.cpp @ 248] 1d 002ec594 1043b2e8 Qt5WebKitd!WebCore::ResourceLoadScheduler::scheduleLoad+0x158 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\loader\resourceloadscheduler.cpp @ 163] 1e 002ec5b0 103139f8 Qt5WebKitd!WebCore::ResourceLoadScheduler::scheduleSubresourceLoad+0x58 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\loader\resourceloadscheduler.cpp @ 124] 1f 002ec608 1051494a Qt5WebKitd!WebCore::CachedResource::load+0x358 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\loader\cache\cachedresource.cpp @ 297] 20 002ec708 10515e3d Qt5WebKitd!WebCore::CachedResourceLoader::requestResource+0x42a [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\loader\cache\cachedresourceloader.cpp @ 468] 21 002ec834 10515c2b Qt5WebKitd!WebCore::CachedResourceLoader::requestPreload+0x11d [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\loader\cache\cachedresourceloader.cpp @ 817] 22 002ec914 10ad924b Qt5WebKitd!WebCore::CachedResourceLoader::preload+0x10b [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\loader\cache\cachedresourceloader.cpp @ 792] 23 002ecaf4 10ad8b92 Qt5WebKitd!WebCore::PreloadTask::preload+0x10b [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\html\parser\htmlpreloadscanner.cpp @ 136] 24 002ecb5c 10ad89b5 Qt5WebKitd!WebCore::HTMLPreloadScanner::processToken+0x1b2 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\html\parser\htmlpreloadscanner.cpp @ 218] 25 002ecb68 104be8ed Qt5WebKitd!WebCore::HTMLPreloadScanner::scan+0x55 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\html\parser\htmlpreloadscanner.cpp @ 187] 26 002ecba8 104be2b3 Qt5WebKitd!WebCore::HTMLDocumentParser::pumpTokenizer+0x3fd [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\html\parser\htmldocumentparser.cpp @ 292] 27 002ecbb8 104bebad Qt5WebKitd!WebCore::HTMLDocumentParser::pumpTokenizerIfPossible+0x83 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\html\parser\htmldocumentparser.cpp @ 174] 28 002ecbcc 10abb7aa Qt5WebKitd!WebCore::HTMLDocumentParser::append+0xed [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\html\parser\htmldocumentparser.cpp @ 363] 29 002ecc24 103279b8 Qt5WebKitd!WebCore::DecodedDataDocumentParser::appendBytes+0x6a [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\dom\decodeddatadocumentparser.cpp @ 50] 2a 002ecc40 101f1cc5 Qt5WebKitd!WebCore::DocumentWriter::addData+0xb8 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\loader\documentwriter.cpp @ 222] 2b 002ecc90 0fc27b55 Qt5WebKitd!WebCore::DocumentLoader::commitData+0x1b5 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\loader\documentloader.cpp @ 363] 2c 002eccbc 101f1af7 Qt5WebKitd!WebCore::FrameLoaderClientQt::committedLoad+0x25 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webkit\qt\webcoresupport\frameloaderclientqt.cpp @ 877] 2d 002ecce4 101f1e86 Qt5WebKitd!WebCore::DocumentLoader::commitLoad+0xa7 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\loader\documentloader.cpp @ 325] 2e 002eccf8 1078a943 Qt5WebKitd!WebCore::DocumentLoader::receivedData+0x26 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\loader\documentloader.cpp @ 394] 2f 002ecd0c 1046c51f Qt5WebKitd!WebCore::MainResourceLoader::addData+0x33 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\loader\mainresourceloader.cpp @ 190] 30 002ecd28 1078b948 Qt5WebKitd!WebCore::ResourceLoader::didReceiveData+0x2f [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\loader\resourceloader.cpp @ 293] 31 002ecd4c 1046cc2b Qt5WebKitd!WebCore::MainResourceLoader::didReceiveData+0x168 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\loader\mainresourceloader.cpp @ 488] 32 002ecd74 103c3048 Qt5WebKitd!WebCore::ResourceLoader::didReceiveData+0x4b [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\loader\resourceloader.cpp @ 448] 33 002ecd9c 103c0fa4 Qt5WebKitd!WebCore::QNetworkReplyHandler::forwardData+0x128 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\platform\network\qt\qnetworkreplyhandler.cpp @ 674] 34 002ecda8 103c0e39 Qt5WebKitd!WebCore::QNetworkReplyHandlerCallQueue::flush+0x54 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\platform\network\qt\qnetworkreplyhandler.cpp @ 249] 35 002ecdb4 103c3f51 Qt5WebKitd!WebCore::QNetworkReplyHandlerCallQueue::unlock+0x29 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\platform\network\qt\qnetworkreplyhandler.cpp @ 230] 36 002ecdc0 103c1798 Qt5WebKitd!WebCore::QueueLocker::~QueueLocker+0x11 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\platform\network\qt\qnetworkreplyhandler.cpp @ 257] 37 002ecde0 103c15f9 Qt5WebKitd!WebCore::QNetworkReplyWrapper::emitMetaDataChanged+0x118 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\platform\network\qt\qnetworkreplyhandler.cpp @ 390] 38 002ecdf4 103c150a Qt5WebKitd!WebCore::QNetworkReplyWrapper::receiveSniffedMIMEType+0x89 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\platform\network\qt\qnetworkreplyhandler.cpp @ 360] 39 002ece64 103c3a00 Qt5WebKitd!WebCore::QNetworkReplyWrapper::receiveMetaData+0x25a [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\platform\network\qt\qnetworkreplyhandler.cpp @ 346] 3a 002ece74 59814c50 Qt5WebKitd!WebCore::QNetworkReplyWrapper::qt_static_metacall+0x30 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtwebkit\source\webcore\tmp\moc\debug_shared\moc_qnetworkreplyhandler.cpp @ 172] 3b 002ecf4c 59814681 Qt5Cored!QMetaObject::activate+0x5c0 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\kernel\qobject.cpp @ 3441] 3c 002ecf64 598c9579 Qt5Cored!QMetaObject::activate+0x21 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\kernel\qobject.cpp @ 3316] 3d 002ecf80 609d2a3a Qt5Cored!QIODevice::readyRead+0x19 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\tmp\moc\debug_shared\moc_qiodevice.cpp @ 154] 3e 002ecfac 60a73ae1 Qt5Networkd!QNetworkReplyHttpImplPrivate::replyDownloadProgressSlot+0x12a [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\network\access\qnetworkreplyhttpimpl.cpp @ 1191] 3f 002ed008 5980e78d Qt5Networkd!QNetworkReplyHttpImpl::qt_static_metacall+0x251 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\network\tmp\moc\debug_shared\moc_qnetworkreplyhttpimpl_p.cpp @ 215] 40 002ed028 5980f59a Qt5Cored!QMetaCallEvent::placeMetaCall+0x6d [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\kernel\qobject.cpp @ 479] 41 002ed0e0 57d826ce Qt5Cored!QObject::event+0xfa [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\kernel\qobject.cpp @ 1071] 42 002ed100 57d801e3 Qt5Widgetsd!QApplicationPrivate::notify_helper+0xfe [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\widgets\kernel\qapplication.cpp @ 3352] 43 002ed6f4 597c5f34 Qt5Widgetsd!QApplication::notify+0x233 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\widgets\kernel\qapplication.cpp @ 2783] 44 002ed738 597cb2b9 Qt5Cored!QCoreApplication::notifyInternal+0x94 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\kernel\qcoreapplication.cpp @ 767] 45 002ed74c 597c6db5 Qt5Cored!QCoreApplication::sendEvent+0x39 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\kernel\qcoreapplication.h @ 203] 46 002ed7d4 597c6a6d Qt5Cored!QCoreApplicationPrivate::sendPostedEvents+0x335 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\kernel\qcoreapplication.cpp @ 1368] 47 002ed7ec 5851899d Qt5Cored!QCoreApplication::sendPostedEvents+0x1d [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\kernel\qcoreapplication.cpp @ 1228] 48 002ed7fc 5f25ab04 Qt5Guid!QWindowSystemInterface::sendWindowSystemEvents+0xd [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\gui\kernel\qwindowsysteminterface.cpp @ 515] 49 002ed80c 5984e517 windowsd!QWindowsGuiEventDispatcher::sendPostedEvents+0x14 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\plugins\platforms\windows\qwindowsguieventdispatcher.cpp @ 86] 4a 002ed8ac 758262fa Qt5Cored!qt_internal_proc+0x2f7 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\kernel\qeventdispatcher_win.cpp @ 423] 4b 002ed8d8 75826d3a USER32!gapfnScSendMessage+0x332 4c 002ed950 758277c4 USER32!GetThreadDesktop+0xd7 4d 002ed9b0 7582788a USER32!CharPrevW+0x138 4e 002ed9c0 5984f603 USER32!DispatchMessageW+0xf 4f 002ef7c8 5f25aa6e Qt5Cored!QEventDispatcherWin32::processEvents+0x593 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\kernel\qeventdispatcher_win.cpp @ 744] 50 002ef814 597c2b31 windowsd!QWindowsGuiEventDispatcher::processEvents+0x8e [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\plugins\platforms\windows\qwindowsguieventdispatcher.cpp @ 78] 51 002ef828 597c2c8e Qt5Cored!QEventLoop::processEvents+0x41 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\kernel\qeventloop.cpp @ 137] 52 002ef88c 597c646d Qt5Cored!QEventLoop::exec+0x14e [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\kernel\qeventloop.cpp @ 212] 53 002ef8ec 5852f8e9 Qt5Cored!QCoreApplication::exec+0x12d [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\corelib\kernel\qcoreapplication.cpp @ 1020] 54 002ef8f4 57d7ff09 Qt5Guid!QGuiApplication::exec+0x9 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\gui\kernel\qguiapplication.cpp @ 1187] 55 002ef8fc 010423a1 Qt5Widgetsd!QApplication::exec+0x19 [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\widgets\kernel\qapplication.cpp @ 2660] 56 002efb8c 0104507a SANSASORI!main+0x1111 [d:\shareware\sansasori\src\sansasori\main.cpp @ 109] 57 002efbb4 01044860 SANSASORI!WinMain+0x7a [d:\qt-everywhere-opensource-src-5.0.0-rc1\qtbase\src\winmain\qtmain_win.cpp @ 131] 58 002efc5c 010445ef SANSASORI!__tmainCRTStartup+0x260 [f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c @ 547] 59 002efc64 76ef339a SANSASORI!WinMainCRTStartup+0xf [f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c @ 371] 5a 002efc70 778e9ef2 kernel32!BaseThreadInitThunk+0x12 5b 002efcb0 778e9ec5 ntdll32!RtlInitializeExceptionChain+0x63 5c 002efcc8 00000000 ntdll32!RtlInitializeExceptionChain+0x36