Bug 149312

Summary: Null dereference loading Blink layout test scrollbars/custom-scrollbar-appearance-property.html
Product: WebKit Reporter: Jon Honeycutt <jhoneycutt>
Component: Layout and RenderingAssignee: Jiewen Tan <jiewen_tan>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, esprehn+autocc, glenn, jiewen_tan, kondapallykalyan, webkit-bug-importer
Priority: P2 Keywords: BlinkMergeCandidate, HasReduction, InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=150946
Attachments:
Description Flags
crashing test
none
Patch none

Description Jon Honeycutt 2015-09-17 16:17:12 PDT
Created attachment 261450 [details]
crashing test

Null dereference loading Blink layout test scrollbars/custom-scrollbar-appearance-property.html.

Stack trace:

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x0000000000000020
Exception Note:        EXC_CORPSE_NOTIFY

VM Regions Near 0x20:
--> 
    __TEXT                 000000010889e000-00000001088a0000 [    8K] r-x/rwx SM=COW  /Users/USER/*/WebKit.framework/Versions/A/XPCServices/com.apple.WebKit.WebContent.Development.xpc/Contents/MacOS/com.apple.WebKit.WebContent.Development

Application Specific Information:
CRASHING TEST: temp-tests/scrollbars/custom-scrollbar-appearance-property.html

Global Trace Buffer (reverse chronological seconds):
18446744022.906845 CFNetwork                 	0x00007fff88d43b97 Explicitly setting CF cookie storage singleton
18446744022.907223 CFNetwork                 	0x00007fff88d8f211 Explicitly setting cookie storage singleton

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.WebCore             	0x0000000111055bd4 WebCore::Node::shadowHost() const + 4 (Node.h:401)
1   com.apple.WebCore             	0x0000000111269526 WebCore::RenderThemeMac::paintSearchFieldResultsDecorationPart(WebCore::RenderObject const&, WebCore::PaintInfo const&, WebCore::IntRect const&) + 54 (RenderThemeMac.mm:1764)
2   com.apple.WebCore             	0x000000011125f9e9 WebCore::RenderTheme::paint(WebCore::RenderBox const&, WebCore::ControlStates&, WebCore::PaintInfo const&, WebCore::LayoutRect const&) + 1465 (RenderTheme.cpp:390)
3   com.apple.WebCore             	0x000000011111364d WebCore::RenderBox::paintBoxDecorations(WebCore::PaintInfo&, WebCore::LayoutPoint const&) + 541 (RenderBox.cpp:1302)
4   com.apple.WebCore             	0x00000001110e2845 WebCore::RenderBlock::paintObject(WebCore::PaintInfo&, WebCore::LayoutPoint const&) + 277 (RenderBlock.cpp:1554)
5   com.apple.WebCore             	0x00000001110e1e86 WebCore::RenderBlock::paint(WebCore::PaintInfo&, WebCore::LayoutPoint const&) + 326 (RenderBlock.cpp:1416)
6   com.apple.WebCore             	0x00000001111f2752 WebCore::RenderScrollbarPart::paintIntoRect(WebCore::GraphicsContext&, WebCore::LayoutPoint const&, WebCore::LayoutRect const&) + 802 (RenderScrollbarPart.cpp:180)
7   com.apple.WebCore             	0x00000001111f0d03 WebCore::RenderScrollbar::paintPart(WebCore::GraphicsContext&, WebCore::ScrollbarPart, WebCore::IntRect const&) + 515 (RenderScrollbar.cpp:261)
8   com.apple.WebCore             	0x00000001111f2c75 WebCore::RenderScrollbarTheme::paintScrollbarBackground(WebCore::GraphicsContext&, WebCore::Scrollbar&) + 53 (RenderScrollbarTheme.cpp:137)
9   com.apple.WebCore             	0x00000001112e0f7f WebCore::ScrollbarThemeComposite::paint(WebCore::Scrollbar&, WebCore::GraphicsContext&, WebCore::IntRect const&) + 591 (ScrollbarThemeComposite.cpp:82)
10  com.apple.WebCore             	0x00000001112e018a WebCore::Scrollbar::paint(WebCore::GraphicsContext&, WebCore::IntRect const&) + 170 (Scrollbar.cpp:160)
11  com.apple.WebCore             	0x000000011118a8da WebCore::RenderLayer::paintOverflowControls(WebCore::GraphicsContext&, WebCore::IntPoint const&, WebCore::IntRect const&, bool) + 378 (RefPtr.h:75)
12  com.apple.WebCore             	0x00000001110e20fe WebCore::RenderBlock::paint(WebCore::PaintInfo&, WebCore::LayoutPoint const&) + 958 (RenderBlock.cpp:1424)
13  com.apple.WebCore             	0x00000001110e24da WebCore::RenderBlock::paintChild(WebCore::RenderBox&, WebCore::PaintInfo&, WebCore::LayoutPoint const&, WebCore::PaintInfo&, bool, WebCore::RenderBlock::PaintBlockType) + 602 (RenderObject.h:976)
14  com.apple.WebCore             	0x00000001110e225f WebCore::RenderBlock::paintChildren(WebCore::PaintInfo&, WebCore::LayoutPoint const&, WebCore::PaintInfo&, bool) + 79 (RenderBlock.cpp:1455)
15  com.apple.WebCore             	0x00000001110e2207 WebCore::RenderBlock::paintContents(WebCore::PaintInfo&, WebCore::LayoutPoint const&) + 247 (RenderBlock.cpp:1450)
16  com.apple.WebCore             	0x00000001110e2956 WebCore::RenderBlock::paintObject(WebCore::PaintInfo&, WebCore::LayoutPoint const&) + 550 (RenderObject.h:564)
17  com.apple.WebCore             	0x00000001110e1e86 WebCore::RenderBlock::paint(WebCore::PaintInfo&, WebCore::LayoutPoint const&) + 326 (RenderBlock.cpp:1416)
18  com.apple.WebCore             	0x00000001110e24da WebCore::RenderBlock::paintChild(WebCore::RenderBox&, WebCore::PaintInfo&, WebCore::LayoutPoint const&, WebCore::PaintInfo&, bool, WebCore::RenderBlock::PaintBlockType) + 602 (RenderObject.h:976)
19  com.apple.WebCore             	0x00000001110e225f WebCore::RenderBlock::paintChildren(WebCore::PaintInfo&, WebCore::LayoutPoint const&, WebCore::PaintInfo&, bool) + 79 (RenderBlock.cpp:1455)
20  com.apple.WebCore             	0x00000001110e2207 WebCore::RenderBlock::paintContents(WebCore::PaintInfo&, WebCore::LayoutPoint const&) + 247 (RenderBlock.cpp:1450)
21  com.apple.WebCore             	0x00000001110e2956 WebCore::RenderBlock::paintObject(WebCore::PaintInfo&, WebCore::LayoutPoint const&) + 550 (RenderObject.h:564)
22  com.apple.WebCore             	0x00000001110e1e86 WebCore::RenderBlock::paint(WebCore::PaintInfo&, WebCore::LayoutPoint const&) + 326 (RenderBlock.cpp:1416)
23  com.apple.WebCore             	0x000000011119375a WebCore::RenderLayer::paintForegroundForFragmentsWithPhase(WebCore::PaintPhase, WTF::Vector<WebCore::LayerFragment, 1ul, WTF::CrashOnOverflow, 16ul> const&, WebCore::GraphicsContext&, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int, WebCore::RenderObject*) + 394 (RenderLayer.cpp:4735)
24  com.apple.WebCore             	0x000000011119138c WebCore::RenderLayer::paintForegroundForFragments(WTF::Vector<WebCore::LayerFragment, 1ul, WTF::CrashOnOverflow, 16ul> const&, WebCore::GraphicsContext&, WebCore::GraphicsContext&, WebCore::LayoutRect const&, bool, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int, WebCore::RenderObject*, bool) + 380 (RenderLayer.cpp:4696)
25  com.apple.WebCore             	0x000000011118e1e0 WebCore::RenderLayer::paintLayerContents(WebCore::GraphicsContext&, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) + 2992 (RenderLayer.cpp:4325)
26  com.apple.WebCore             	0x000000011118e328 WebCore::RenderLayer::paintLayerContents(WebCore::GraphicsContext&, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) + 3320 (RenderLayer.cpp:4428)
27  com.apple.WebCore             	0x00000001111a48fc WebCore::RenderLayerBacking::paintIntoLayer(WebCore::GraphicsLayer const*, WebCore::GraphicsContext&, WebCore::IntRect const&, unsigned int, unsigned int) + 524 (RenderLayerBacking.cpp:2308)
28  com.apple.WebCore             	0x00000001111a4ba0 WebCore::RenderLayerBacking::paintContents(WebCore::GraphicsLayer const*, WebCore::GraphicsContext&, unsigned int, WebCore::FloatRect const&) + 528 (RenderLayerBacking.h:257)
29  com.apple.WebCore             	0x0000000110a24dd7 WebCore::GraphicsLayer::paintGraphicsLayerContents(WebCore::GraphicsContext&, WebCore::FloatRect const&) + 135 (GraphicsLayer.cpp:414)
30  com.apple.WebCore             	0x0000000111099329 WebCore::PlatformCALayer::drawLayerContents(CGContext*, WebCore::PlatformCALayer*, WTF::Vector<WebCore::FloatRect, 5ul, WTF::CrashOnOverflow, 16ul>&) + 345 (GraphicsContext.h:581)
31  com.apple.WebCore             	0x0000000111509bf3 WebCore::TileGrid::platformCALayerPaintContents(WebCore::PlatformCALayer*, WebCore::GraphicsContext&, WebCore::FloatRect const&) + 163 (Vector.h:634)
32  com.apple.WebCore             	0x00000001115abafc -[WebSimpleLayer drawInContext:] + 172 (WebLayer.mm:131)
33  com.apple.QuartzCore          	0x00007fff937cd839 CABackingStoreUpdate_ + 3494
34  com.apple.QuartzCore          	0x00007fff937cca8d ___ZN2CA5Layer8display_Ev_block_invoke + 59
35  com.apple.QuartzCore          	0x00007fff937c06e9 CA::Layer::display_() + 1565
36  com.apple.WebCore             	0x00000001115aba1b -[WebSimpleLayer display] + 43 (WebLayer.mm:112)
37  com.apple.QuartzCore          	0x00007fff937beac5 CA::Layer::display_if_needed(CA::Transaction*) + 603
38  com.apple.QuartzCore          	0x00007fff937be145 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 35
39  com.apple.QuartzCore          	0x00007fff937bd6a9 CA::Context::commit_transaction(CA::Transaction*) + 277
40  com.apple.QuartzCore          	0x00007fff937bd3dc CA::Transaction::commit() + 508
41  com.apple.WebKit              	0x000000010ee22864 WebKit::TiledCoreAnimationDrawingArea::forceRepaint() + 152 (TiledCoreAnimationDrawingArea.mm:149)
42  WebKitTestRunnerInjectedBundle	0x0000000112c7875e WTR::InjectedBundlePage::dump() + 50 (InjectedBundlePage.cpp:853)
43  com.apple.WebKit              	0x000000010ed5de5e WebKit::InjectedBundlePageLoaderClient::didFinishLoadForFrame(WebKit::WebPage*, WebKit::WebFrame*, WTF::RefPtr<API::Object>&) + 76 (InjectedBundlePageLoaderClient.cpp:146)
44  com.apple.WebKit              	0x000000010ee84126 WebKit::WebFrameLoaderClient::dispatchDidFinishLoad() + 72 (WebFrameLoaderClient.cpp:553)
45  com.apple.WebCore             	0x00000001109d0ad2 WebCore::FrameLoader::checkLoadCompleteForThisFrame() + 594 (FrameLoader.cpp:2286)
46  com.apple.WebCore             	0x00000001109c73b6 WebCore::FrameLoader::checkLoadComplete() + 438 (FrameLoader.cpp:2465)
47  com.apple.WebCore             	0x000000011085da80 WebCore::DocumentLoader::finishedLoading(double) + 416 (DocumentLoader.cpp:439)
48  com.apple.WebCore             	0x000000011068e179 WebCore::CachedResource::checkNotify() + 153 (CachedResourceClientWalker.h:51)
49  com.apple.WebCore             	0x000000011068a433 WebCore::CachedRawResource::finishLoading(WebCore::SharedBuffer*) + 227 (CachedRawResource.cpp:104)
50  com.apple.WebCore             	0x0000000111405501 WebCore::SubresourceLoader::didFinishLoading(double) + 1153 (ResourceLoader.h:154)
51  com.apple.WebKit              	0x000000010ef4b98d WebKit::WebResourceLoader::didReceiveWebResourceLoaderMessage(IPC::Connection&, IPC::MessageDecoder&) + 561 (HandleMessage.h:16)
52  com.apple.WebKit              	0x000000010ed251f1 IPC::Connection::dispatchMessage(std::__1::unique_ptr<IPC::MessageDecoder, std::__1::default_delete<IPC::MessageDecoder> >) + 127 (memory:2636)
53  com.apple.WebKit              	0x000000010ed27b4a IPC::Connection::dispatchOneMessage() + 126 (memory:2656)
54  com.apple.JavaScriptCore      	0x0000000110169985 WTF::RunLoop::performWork() + 437 (functional:1742)
55  com.apple.JavaScriptCore      	0x0000000110169d32 WTF::RunLoop::performWork(void*) + 34 (RunLoopCF.cpp:39)
56  com.apple.CoreFoundation      	0x00007fff949e2c01 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
57  com.apple.CoreFoundation      	0x00007fff949d4b1c __CFRunLoopDoSources0 + 556
58  com.apple.CoreFoundation      	0x00007fff949d403f __CFRunLoopRun + 927
59  com.apple.CoreFoundation      	0x00007fff949d3a38 CFRunLoopRunSpecific + 296
60  com.apple.HIToolbox           	0x00007fff88e673bd RunCurrentEventLoopInMode + 235
61  com.apple.HIToolbox           	0x00007fff88e67153 ReceiveNextEventCommon + 432
62  com.apple.HIToolbox           	0x00007fff88e66f93 _BlockUntilNextEventMatchingListInModeWithFilter + 71
63  com.apple.AppKit              	0x00007fff870b81e7 _DPSNextEvent + 1076
64  com.apple.AppKit              	0x00007fff8748490d -[NSApplication _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 454
65  com.apple.AppKit              	0x00007fff870ae0b8 -[NSApplication run] + 682
66  com.apple.AppKit              	0x00007fff87030396 NSApplicationMain + 1176
67  libxpc.dylib                  	0x00007fff8c70ff70 _xpc_objc_main + 793
68  libxpc.dylib                  	0x00007fff8c7116bf xpc_main + 494
69  com.apple.WebKit.WebContent.Development	0x000000010889f424 main + 409 (XPCServiceMain.Development.mm:187)
70  libdyld.dylib                 	0x00007fff93aa15ad start + 1
Comment 1 Radar WebKit Bug Importer 2015-09-17 16:17:33 PDT
<rdar://problem/22748910>
Comment 2 Jiewen Tan 2015-10-30 18:58:29 PDT
Created attachment 264457 [details]
Patch
Comment 3 WebKit Commit Bot 2015-11-03 11:10:24 PST
Comment on attachment 264457 [details]
Patch

Rejecting attachment 264457 [details] from commit-queue.

jiewen_tan@apple.com does not have committer permissions according to http://trac.webkit.org/browser/trunk/Tools/Scripts/webkitpy/common/config/contributors.json.

- If you do not have committer rights please read http://webkit.org/coding/contributing.html for instructions on how to use bugzilla flags.

- If you have committer rights please correct the error in Tools/Scripts/webkitpy/common/config/contributors.json by adding yourself to the file (no review needed).  The commit-queue restarts itself every 2 hours.  After restart the commit-queue will correctly respect your committer rights.
Comment 4 WebKit Commit Bot 2015-11-03 13:23:17 PST
Comment on attachment 264457 [details]
Patch

Rejecting attachment 264457 [details] from commit-queue.

jiewen_tan@apple.com does not have committer permissions according to http://trac.webkit.org/browser/trunk/Tools/Scripts/webkitpy/common/config/contributors.json.

- If you do not have committer rights please read http://webkit.org/coding/contributing.html for instructions on how to use bugzilla flags.

- If you have committer rights please correct the error in Tools/Scripts/webkitpy/common/config/contributors.json by adding yourself to the file (no review needed).  The commit-queue restarts itself every 2 hours.  After restart the commit-queue will correctly respect your committer rights.
Comment 5 WebKit Commit Bot 2015-11-03 16:06:14 PST
Comment on attachment 264457 [details]
Patch

Clearing flags on attachment: 264457

Committed r191991: <http://trac.webkit.org/changeset/191991>
Comment 6 WebKit Commit Bot 2015-11-03 16:06:19 PST
All reviewed patches have been landed.  Closing bug.