RESOLVED FIXED Bug 54141
WKView draws at wrong size, performs badly if is resized while hidden (assertion fails in BackingStore::incorporateUpdate in Debug builds)
https://bugs.webkit.org/show_bug.cgi?id=54141
Summary WKView draws at wrong size, performs badly if is resized while hidden (assert...
Adam Roben (:aroben)
Reported 2011-02-09 13:44:49 PST
If a WKView is resized while hidden, then shown again, it will repaint at whatever size it had before it was hidden, and will generally perform badly. In Debug builds, you'll hit an assertion in BackingStore::incorporateUpdate: ASSERT(m_size == updateInfo.viewSize); Here's the backtrace: > WebKit.dll!WebKit::BackingStore::incorporateUpdate(const WebKit::UpdateInfo & updateInfo={...}) Line 58 + 0x35 bytes C++ WebKit.dll!WebKit::DrawingAreaProxyImpl::incorporateUpdate(const WebKit::UpdateInfo & updateInfo={...}) Line 207 C++ WebKit.dll!WebKit::DrawingAreaProxyImpl::update(unsigned __int64 sequenceNumber=3, const WebKit::UpdateInfo & updateInfo={...}) Line 142 C++ WebKit.dll!CoreIPC::callMemberFunction<WebKit::DrawingAreaProxy,void (__thiscall WebKit::DrawingAreaProxy::*)(unsigned __int64,WebKit::UpdateInfo const &),unsigned __int64,WebKit::UpdateInfo>(const CoreIPC::Arguments2<unsigned __int64,WebKit::UpdateInfo> & args={...}, WebKit::DrawingAreaProxy * object=0x05389238, void (unsigned __int64, const WebKit::UpdateInfo &)* function=0x0065cab3) Line 25 + 0x19 bytes C++ WebKit.dll!CoreIPC::handleMessage<Messages::DrawingAreaProxy::Update,WebKit::DrawingAreaProxy,void (__thiscall WebKit::DrawingAreaProxy::*)(unsigned __int64,WebKit::UpdateInfo const &)>(CoreIPC::ArgumentDecoder * argumentDecoder=0x053fede8, WebKit::DrawingAreaProxy * object=0x05389238, void (unsigned __int64, const WebKit::UpdateInfo &)* function=0x0065cab3) Line 246 + 0x11 bytes C++ WebKit.dll!WebKit::DrawingAreaProxy::didReceiveDrawingAreaProxyMessage(CoreIPC::Connection * __formal=0x05392c98, CoreIPC::MessageID messageID={...}, CoreIPC::ArgumentDecoder * arguments=0x053fede8) Line 41 + 0x12 bytes C++ WebKit.dll!WebKit::WebPageProxy::didReceiveMessage(CoreIPC::Connection * connection=0x05392c98, CoreIPC::MessageID messageID={...}, CoreIPC::ArgumentDecoder * arguments=0x053fede8) Line 1169 C++ WebKit.dll!WebKit::WebProcessProxy::didReceiveMessage(CoreIPC::Connection * connection=0x05392c98, CoreIPC::MessageID messageID={...}, CoreIPC::ArgumentDecoder * arguments=0x053fede8) Line 245 C++ WebKit.dll!CoreIPC::Connection::dispatchMessages() Line 450 + 0x31 bytes C++ WebKit.dll!MemberFunctionWorkItem0<CoreIPC::Connection>::execute() Line 76 + 0x10 bytes C++ WebKit.dll!RunLoop::performWork() Line 63 + 0x1a bytes C++ WebKit.dll!RunLoop::wndProc(HWND__ * hWnd=0x00140564, unsigned int message=1025, unsigned int wParam=85650232, long lParam=0) Line 57 C++ WebKit.dll!RunLoop::RunLoopWndProc(HWND__ * hWnd=0x00140564, unsigned int message=1025, unsigned int wParam=85650232, long lParam=0) Line 39 + 0x18 bytes C++
Attachments
Decode a null SharedMemory::Handle correctly on Windows (11.81 KB, patch)
2011-02-09 14:03 PST, Adam Roben (:aroben)
no flags
Decode a null SharedMemory::Handle correctly on Windows (11.81 KB, patch)
2011-02-09 14:06 PST, Adam Roben (:aroben)
no flags
Decode a null SharedMemory::Handle correctly on Windows (11.10 KB, patch)
2011-02-09 14:11 PST, Adam Roben (:aroben)
darin: review+
Adam Roben (:aroben)
Comment 1 2011-02-09 13:45:17 PST
Adam Roben (:aroben)
Comment 2 2011-02-09 14:03:06 PST
Created attachment 81870 [details] Decode a null SharedMemory::Handle correctly on Windows
Adam Roben (:aroben)
Comment 3 2011-02-09 14:06:21 PST
Created attachment 81871 [details] Decode a null SharedMemory::Handle correctly on Windows
Adam Roben (:aroben)
Comment 4 2011-02-09 14:11:30 PST
Created attachment 81872 [details] Decode a null SharedMemory::Handle correctly on Windows
Adam Roben (:aroben)
Comment 5 2011-02-10 04:43:01 PST
Note You need to log in before you can comment on or make changes to this bug.