Bug 50388 - [Qt] http://webchat.freenode.net/ is not rendered properly and crash when reloading
Summary: [Qt] http://webchat.freenode.net/ is not rendered properly and crash when rel...
Status: RESOLVED WORKSFORME
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC Windows 7
: P1 Critical
Assignee: Nobody
URL:
Keywords: Qt, QtTriaged
Depends on:
Blocks:
 
Reported: 2010-12-02 08:12 PST by mathiasgarbe
Modified: 2011-02-23 08:57 PST (History)
4 users (show)

See Also:


Attachments
Screenshot of the issue (68.41 KB, image/png)
2011-02-23 05:05 PST, Alexis Menard (darktears)
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description mathiasgarbe 2010-12-02 08:12:37 PST
When directing the WebView to "http://webchat.freenode.net/", the site not only gets not displayed correct (corrupted), but also crashes when the user right clicks and selects "Reload".

I tried this in Qt 4.7.0 and 4.7.1 - I think this is caused by the javascript on that site.

Here is the stacktrace MSVS gives me:
>	QtNetworkd4.dll!QHttpNetworkRequest::operation()  Line 240 + 0xb bytes	C++
 	QtNetworkd4.dll!QHttpNetworkReplyPrivate::expectContent()  Line 801 + 0xb bytes	C++
 	QtNetworkd4.dll!QHttpNetworkConnectionChannel::_q_receiveReply()  Line 395 + 0x8 bytes	C++
 	QtNetworkd4.dll!QHttpNetworkConnectionChannel::_q_readyRead()  Line 876	C++
 	QtNetworkd4.dll!QHttpNetworkConnectionChannel::qt_metacall(QMetaObject::Call _c=InvokeMetaMethod, int _id=2, void * * _a=0x003dd2c4)  Line 92 + 0x8 bytes	C++
 	QtCored4.dll!QMetaObject::metacall(QObject * object=0x037186cc, QMetaObject::Call cl=InvokeMetaMethod, int idx=6, void * * argv=0x003dd2c4)  Line 238	C++
 	QtCored4.dll!QMetaObject::activate(QObject * sender=0x0371a230, const QMetaObject * m=0x67342060, int local_signal_index=0, void * * argv=0x00000000)  Line 3272 + 0x27 bytes	C++
 	QtCored4.dll!QIODevice::readyRead()  Line 91 + 0x12 bytes	C++
 	QtNetworkd4.dll!QAbstractSocketPrivate::canReadNotification()  Line 640	C++
 	QtNetworkd4.dll!QAbstractSocketPrivate::readNotification()  Line 77 + 0x15 bytes	C++
 	QtNetworkd4.dll!QAbstractSocketEngine::readNotification()  Line 155	C++
 	QtNetworkd4.dll!QReadNotifier::event(QEvent * e=0x003dd87c)  Line 1104	C++
 	QtGuid4.dll!QApplicationPrivate::notify_helper(QObject * receiver=0x05a974b0, QEvent * e=0x003dd87c)  Line 4445 + 0x11 bytes	C++
 	QtGuid4.dll!QApplication::notify(QObject * receiver=0x05a974b0, QEvent * e=0x003dd87c)  Line 3845 + 0x10 bytes	C++
 	QtCored4.dll!QCoreApplication::notifyInternal(QObject * receiver=0x05a974b0, QEvent * event=0x003dd87c)  Line 732 + 0x15 bytes	C++
 	QtCored4.dll!QCoreApplication::sendEvent(QObject * receiver=0x05a974b0, QEvent * event=0x003dd87c)  Line 215 + 0x39 bytes	C++
 	QtCored4.dll!qt_internal_proc(HWND__ * hwnd=0x00080fa4, unsigned int message=1024, unsigned int wp=1832, long lp=1)  Line 491 + 0xf bytes	C++
Comment 1 mathiasgarbe 2010-12-02 08:22:12 PST
I just tested the site with the FancyBrowser Example that is included with Qt - I get the same error there.
Comment 2 Benjamin Poulain 2011-01-30 05:27:17 PST
Please follow http://trac.webkit.org/wiki/QtWebKitBugs when reporing bugs here (missing Qt keyword).

I have no problem with the site with WebKit trunk on Mac. Do you still have the problem or the site has changed and that cannot be reproduced anymore?
Comment 3 Alexis Menard (darktears) 2011-02-23 05:05:37 PST
Created attachment 83474 [details]
Screenshot of the issue
Comment 4 Alexis Menard (darktears) 2011-02-23 05:08:35 PST
I can reproduce the issue with Linux and QtTestBrowser. I do have rendering issue but no crash when reloading the page.

Steps to reproduce :

- Open QtTestBrowser (and let the default size, do not maximized).
- Go to http://webchat.freenode.net/ (do not log in).
- Maximized the QtTestBrowser.

Lot of rendering issue are showing. I suspect the page to not be properly repainted.

With QGraphicsView mode there is no artifacts but a white background.

Reloading make the rendering to work properly.
Comment 5 Alexis Menard (darktears) 2011-02-23 05:13:13 PST
Well It seems it's for all websites not only this one.
Comment 6 Alexis Menard (darktears) 2011-02-23 05:20:02 PST
Most probably related to https://bugs.webkit.org/show_bug.cgi?id=54865
Comment 7 mitz 2011-02-23 07:16:54 PST
I have no way to test this, but perhaps QWebPage::setViewportSize() now needs a call to setBoundsSize().
Comment 8 mitz 2011-02-23 08:37:54 PST
Or just change to call resize().
Comment 9 Alexis Menard (darktears) 2011-02-23 08:44:38 PST
I did it in the other bug, posted the patch like 2 minutes ago :)
Comment 10 Alexis Menard (darktears) 2011-02-23 08:57:16 PST
With trunk (r79441) it works perfectly. I can log in, chat and no crash.

Qt 4.7.0 and Qt 4.7.1 includes quite an old version of QtWebKit (2.0 more precisely).

We're working on an update.