Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-44912

Webkit crash on loading SVG.JS

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P1: Critical
    • Resolution: Done
    • Affects Version/s: 5.4.1
    • Fix Version/s: 5.4.2
    • Component/s: WebKit
    • Environment:
      OS X 10.9.5
    • Commits:
      a7f2e6bf8c1bc569c56d713894f442c7fed63264

      Description

      Launch Qt Webkit example browser (or fancybrowser) and try to load examples from http://svgjs.com/ and see crash.

      SVG.JS examples:
      http://svgjs.com/clock/
      http://svgjs.com/filter/

      Crash log:

      Crashed Thread:  0  Dispatch queue: com.apple.main-thread
      
      Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
      Exception Codes: EXC_I386_GPFLT
      
      Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
      0   org.qt-project.QtWebKit       	0x000000010fc2ad4a operationRegExpTest + 122
      1   ???                           	0x00002572e5d4f806 0 + 41175412439046
      2   org.qt-project.QtWebKit       	0x000000010fcc6c85 JSC::Interpreter::execute(JSC::ProgramExecutable*, JSC::ExecState*, JSC::JSObject*) + 4853
      3   org.qt-project.QtWebKit       	0x000000010fddcbf3 JSC::evaluate(JSC::ExecState*, JSC::SourceCode const&, JSC::JSValue, JSC::JSValue*) + 707
      4   org.qt-project.QtWebKit       	0x000000010ec62ff0 WebCore::ScriptController::evaluateInWorld(WebCore::ScriptSourceCode const&, WebCore::DOMWrapperWorld*) + 320
      5   org.qt-project.QtWebKit       	0x000000010ec63239 WebCore::ScriptController::evaluate(WebCore::ScriptSourceCode const&) + 41
      6   org.qt-project.QtWebKit       	0x000000010fa5b388 WebCore::ScriptElement::executeScript(WebCore::ScriptSourceCode const&) + 488
      7   org.qt-project.QtWebKit       	0x000000010fa59d46 WebCore::ScriptElement::prepareScript(WTF::TextPosition const&, WebCore::ScriptElement::LegacyTypeSupport) + 982
      8   org.qt-project.QtWebKit       	0x000000010ed24ecb WebCore::HTMLScriptRunner::runScript(WebCore::Element*, WTF::TextPosition const&) + 347
      9   org.qt-project.QtWebKit       	0x000000010ed24d20 WebCore::HTMLScriptRunner::execute(WTF::PassRefPtr<WebCore::Element>, WTF::TextPosition const&) + 48
      10  org.qt-project.QtWebKit       	0x000000010ed18b44 WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder() + 84
      11  org.qt-project.QtWebKit       	0x000000010ed18bdd WebCore::HTMLDocumentParser::canTakeNextToken(WebCore::HTMLDocumentParser::SynchronousMode, WebCore::PumpSession&) + 93
      12  org.qt-project.QtWebKit       	0x000000010ed18862 WebCore::HTMLDocumentParser::pumpTokenizer(WebCore::HTMLDocumentParser::SynchronousMode) + 418
      13  org.qt-project.QtWebKit       	0x000000010ed19656 WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution() + 118
      14  org.qt-project.QtWebKit       	0x000000010ed19827 WebCore::HTMLDocumentParser::notifyFinished(WebCore::CachedResource*) + 87
      15  org.qt-project.QtWebKit       	0x000000010ed640ea WebCore::CachedResource::checkNotify() + 186
      16  org.qt-project.QtWebKit       	0x000000010edb566c WebCore::SubresourceLoader::didFinishLoading(double) + 140
      17  org.qt-project.QtWebKit       	0x000000010ef837cb WebCore::QNetworkReplyHandler::finish() + 267
      18  org.qt-project.QtWebKit       	0x000000010ef81e82 WebCore::QNetworkReplyHandlerCallQueue::flush() + 226
      19  org.qt-project.QtWebKit       	0x000000010ef85706 WebCore::QNetworkReplyWrapper::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) + 70
      20  org.qt-project.QtCore         	0x000000010e7135cb QMetaObject::activate(QObject*, int, int, void**) + 2987
      21  org.qt-project.QtNetwork      	0x00000001110bb249 QNetworkReplyHttpImplPrivate::finished() + 1161
      22  org.qt-project.QtNetwork      	0x000000011114776e QNetworkReplyHttpImpl::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) + 1758
      23  org.qt-project.QtCore         	0x000000010e70c1b3 QObject::event(QEvent*) + 755
      24  org.qt-project.QtWidgets      	0x000000010d85ebbb QApplicationPrivate::notify_helper(QObject*, QEvent*) + 251
      25  org.qt-project.QtWidgets      	0x000000010d861ed8 QApplication::notify(QObject*, QEvent*) + 8136
      26  org.qt-project.QtCore         	0x000000010e6e187b QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) + 971
      27  libqcocoa.dylib               	0x0000000113e07b8e QCocoaEventDispatcherPrivate::processPostedEvents() + 190
      28  libqcocoa.dylib               	0x0000000113e08411 QCocoaEventDispatcherPrivate::postedEventsSourceCallback(void*) + 33
      29  com.apple.CoreFoundation      	0x00007fff96dd55b1 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
      30  com.apple.CoreFoundation      	0x00007fff96dc6c62 __CFRunLoopDoSources0 + 242
      31  com.apple.CoreFoundation      	0x00007fff96dc63ef __CFRunLoopRun + 831
      32  com.apple.CoreFoundation      	0x00007fff96dc5e75 CFRunLoopRunSpecific + 309
      33  com.apple.HIToolbox           	0x00007fff93047a0d RunCurrentEventLoopInMode + 226
      34  com.apple.HIToolbox           	0x00007fff930477b7 ReceiveNextEventCommon + 479
      35  com.apple.HIToolbox           	0x00007fff930475bc _BlockUntilNextEventMatchingListInModeWithFilter + 65
      36  com.apple.AppKit              	0x00007fff94e0524e _DPSNextEvent + 1434
      37  com.apple.AppKit              	0x00007fff94e0489b -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 122
      38  com.apple.AppKit              	0x00007fff94df899c -[NSApplication run] + 553
      39  libqcocoa.dylib               	0x0000000113e072fd QCocoaEventDispatcher::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 2189
      40  org.qt-project.QtCore         	0x000000010e6de18d QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 381
      41  org.qt-project.QtCore         	0x000000010e6e117a QCoreApplication::exec() + 346
      42  com.trolltech.DemoBrowser     	0x000000010d5485ab main + 123 (main.cpp:43)
      43  com.trolltech.DemoBrowser     	0x000000010d4fa134 start + 52
      

      There's no crash with QtWebEngine.

      People are still stuck with the QWebKit because QWebEngine doesn't support all needed features. So this should get fixed. At least avoid the crash if feature is not supported.

        Attachments

        For Gerrit Dashboard: QTBUG-44912
        # Subject Branch Project Status CR V

          Activity

            People

            • Assignee:
              allan.jensen Allan Sandfeld Jensen
              Reporter:
              qtcomsupport Qt Support
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Gerrit Reviews

                There are no open Gerrit changes