NEW 97708
FrameView::isEnclosedInCompositingLayer() can be called for a FrameView in the page cache
https://bugs.webkit.org/show_bug.cgi?id=97708
Summary FrameView::isEnclosedInCompositingLayer() can be called for a FrameView in th...
Simon Fraser (smfr)
Reported 2012-09-26 11:20:50 PDT
With some local change to detect FrameView methods called on FrameViews in the page cache, I find that this is called on such FrameViews: 1 com.apple.WebCore 0x0000000110fcc23d WebCore::FrameView::isEnclosedInCompositingLayer() const + 45 (FrameView.cpp:882) 2 com.apple.WebKit 0x00000001102712fe setNeedsDisplayInRect(NSView*, objc_selector*, CGRect) + 654 (WebHTMLView.mm:317) 3 com.apple.AppKit 0x00007fff8c6f3672 -[NSView setNeedsDisplay:] + 79 4 com.apple.AppKit 0x00007fff8c74f56e -[NSClipView _selfBoundsChanged] + 645 5 com.apple.AppKit 0x00007fff8c7c1b09 -[NSClipView setBoundsSize:] + 59 6 com.apple.AppKit 0x00007fff8c7c19a5 -[NSView setBounds:] + 153 7 com.apple.AppKit 0x00007fff8c7c1881 -[NSScrollView viewDidChangeBackingProperties] + 173 8 com.apple.AppKit 0x00007fff8ccebfe9 -[NSView(NSInternal) _recursiveSendViewDidChangeBackingPropertiesFrom:toScaleFactor:colorSpace:invokingForSurfacePropertiesChange:alreadyUpdatedSurfaceProperties:] + 1206 9 com.apple.AppKit 0x00007fff8ccec0a0 -[NSView(NSInternal) _recursiveSendViewDidChangeBackingPropertiesFrom:toScaleFactor:colorSpace:invokingForSurfacePropertiesChange:alreadyUpdatedSurfaceProperties:] + 1389 10 com.apple.AppKit 0x00007fff8ccec0a0 -[NSView(NSInternal) _recursiveSendViewDidChangeBackingPropertiesFrom:toScaleFactor:colorSpace:invokingForSurfacePropertiesChange:alreadyUpdatedSurfaceProperties:] + 1389 11 com.apple.AppKit 0x00007fff8c6fa0b1 -[NSView addSubview:] + 1777 12 com.apple.AppKit 0x00007fff8c7be823 -[NSClipView setDocumentView:] + 390 13 com.apple.AppKit 0x00007fff8c7be59e -[NSScrollView setDocumentView:] + 38 14 com.apple.WebKit 0x000000011024afb0 -[WebFrameView(WebInternal) _setDocumentView:] + 400 (WebFrameView.mm:151) 15 com.apple.WebKit 0x000000011023e021 WebFrameLoaderClient::transitionToCommittedFromCachedFrame(WebCore::CachedFrame*) + 401 (WebFrameLoaderClient.mm:1192) 16 com.apple.WebCore 0x0000000110faae2d WebCore::FrameLoader::transitionToCommitted(WTF::PassRefPtr<WebCore::CachedPage>) + 1213 (FrameLoader.cpp:1852) 17 com.apple.WebCore 0x0000000110faa329 WebCore::FrameLoader::commitProvisionalLoad() + 937 (FrameLoader.cpp:1715) 18 com.apple.WebCore 0x0000000110faddcc WebCore::FrameLoader::loadProvisionalItemFromCachedPage() + 316 (FrameLoader.cpp:2957) 19 com.apple.WebCore 0x0000000110fa8c1d WebCore::FrameLoader::continueLoadAfterNavigationPolicy(WebCore::ResourceRequest const&, WTF::PassRefPtr<WebCore::FormState>, bool) + 845 (FrameLoader.cpp:2826) 20 com.apple.WebCore 0x0000000110fa8d17 WebCore::FrameLoader::callContinueLoadAfterNavigationPolicy(void*, WebCore::ResourceRequest const&, WTF::PassRefPtr<WebCore::FormState>, bool) + 87 (FrameLoader.cpp:2702) 21 com.apple.WebCore 0x0000000111a57562 WebCore::PolicyChecker::checkNavigationPolicy(WebCore::ResourceRequest const&, WebCore::DocumentLoader*, WTF::PassRefPtr<WebCore::FormState>, void (*)(void*, WebCore::ResourceRequest const&, WTF::PassRefPtr<WebCore::FormState>, bool), void*) + 370 (PolicyChecker.cpp:69) 22 com.apple.WebCore 0x0000000110fa86e5 WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader*, WebCore::FrameLoadType, WTF::PassRefPtr<WebCore::FormState>) + 1477 (FrameLoader.cpp:1416) 23 com.apple.WebCore 0x0000000110fa48c1 WebCore::FrameLoader::loadDifferentDocumentItem(WebCore::HistoryItem*, WebCore::FrameLoadType) + 161 (FrameLoader.cpp:3054) 24 com.apple.WebCore 0x0000000110fae8c1 WebCore::FrameLoader::loadItem(WebCore::HistoryItem*, WebCore::FrameLoadType) + 161 (FrameLoader.cpp:3142) 25 com.apple.WebCore 0x000000011106af74 WebCore::HistoryController::recursiveGoToItem(WebCore::HistoryItem*, WebCore::HistoryItem*, WebCore::FrameLoadType) + 580 (HistoryController.cpp:752) 26 com.apple.WebCore 0x000000011106aacf WebCore::HistoryController::goToItem(WebCore::HistoryItem*, WebCore::FrameLoadType) + 431 (HistoryController.cpp:291) 27 com.apple.WebCore 0x00000001119fca79 WebCore::Page::goToItem(WebCore::HistoryItem*, WebCore::FrameLoadType) + 201 (Page.cpp:370) 28 com.apple.WebCore 0x00000001119fccaf WebCore::Page::goBackOrForward(int) + 255 (Page.cpp:359) 29 com.apple.WebCore 0x000000011099ef8e WebCore::BackForwardController::goBackOrForward(int) + 30 (BackForwardController.cpp:60) 30 com.apple.WebCore 0x00000001119a2b88 WebCore::ScheduledHistoryNavigation::fire(WebCore::Frame*) + 312 (NavigationScheduler.cpp:206) 31 com.apple.WebCore 0x00000001119a09b2 WebCore::NavigationScheduler::timerFired(WebCore::Timer<WebCore::NavigationScheduler>*) + 178 (NavigationScheduler.cpp:419) 32 com.apple.WebCore 0x00000001119a28f3 WebCore::Timer<WebCore::NavigationScheduler>::fired() + 115 (Timer.h:100) 33 com.apple.WebCore 0x00000001121138bd WebCore::ThreadTimers::sharedTimerFiredInternal() + 285 (ThreadTimers.cpp:118) 34 com.apple.WebCore 0x0000000112113659 WebCore::ThreadTimers::sharedTimerFired() + 25 (ThreadTimers.cpp:94) 35 com.apple.WebCore 0x0000000111e3c823 WebCore::timerFired(__CFRunLoopTimer*, void*) + 67 (SharedTimerMac.mm:167) 36 com.apple.CoreFoundation 0x00007fff87b2fda4 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20 37 com.apple.CoreFoundation 0x00007fff87b2f8bd __CFRunLoopDoTimer + 557 38 com.apple.CoreFoundation 0x00007fff87b15099 __CFRunLoopRun + 1513 39 com.apple.CoreFoundation 0x00007fff87b146b2 CFRunLoopRunSpecific + 290 40 com.apple.Foundation 0x00007fff8d32389e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 268 41 DumpRenderTree 0x000000010f12643b runTest(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) + 4987 42 DumpRenderTree 0x000000010f12503a runTestingServerLoop() + 282 43 DumpRenderTree 0x000000010f1248f7 dumpRenderTree(int, char const**) + 391 Happened with fast/events/pageshow-pagehide-on-back-cached-with-frames.html
Attachments
Note You need to log in before you can comment on or make changes to this bug.