Important: Please read the Qt Code of Conduct -

QWebView crash on Windows (not on Linux) - bug or not?

  • I'm developing an application that uses QWebView. It works fine on Linux (Ubuntu SDK) but fails on Windows.
    To identify the problem I ran the FancyBrowser example on Windows which also crashes. Sometimes not immediately, but after clicking some links the application crashes. I get a Windows messagebox telling met that fancybrowser.exe has stopped working.

    When I try to debug it I get a messagebox telling me that 'The inferior stopped because it received a signal from the Operating System. Signal name: SIGSEGV and Signal meaning: Segmentation fault.

    Application output:

    Debugging starts
    ASSERTION FAILED: !needsLayout()
    rendering\RenderView.cpp(409) : virtual void WebCore::RenderView::paint(WebCore::PaintInfo&, const WebCore::LayoutPoint&)
    Debugging has finished

    I'm running Windows 7, Qt Creator 3.3.0 based on Qt 5.4.0 (MinGW 32 bit). Switching to 5.3 does not help.
    Can someone try running the FancyBrowser example using the same configuration to see if it is a bug or that it is something to do with my configuration.

  • This is a known bug inside WebKit that was reported a long time ago and still has not been fixed. It's to do with rendering sub frames. There have been various lame attempts to fix it but it was not. The only solution is to revert back to Qt 4.8 which does not have this issue. It's unfortunate that nobody seems to be maintaining QtWebkit anymore when it's such an important component of Qt. QtWebEngine is totally lacking with no simple integration with Qt and the restriction that all calls are async. What a mess.

Log in to reply