<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>184390</bug_id>
          
          <creation_ts>2018-04-07 19:23:52 -0700</creation_ts>
          <short_desc>REGRESSION (r226138): WebCore::subdivide() may return an empty vector; Web process can crash when performing find in Epiphany</short_desc>
          <delta_ts>2018-08-29 16:46:18 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>Other</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=189119</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Major</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="antoyo">bouanto</reporter>
          <assigned_to name="Daniel Bates">dbates</assigned_to>
          <cc>beau.adkins</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>darin</cc>
    
    <cc>dbates</cc>
    
    <cc>hyatt</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>pnormand</cc>
    
    <cc>rniwa</cc>
    
    <cc>sabouhallawa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1412656</commentid>
    <comment_count>0</comment_count>
    <who name="antoyo">bouanto</who>
    <bug_when>2018-04-07 19:23:52 -0700</bug_when>
    <thetext>Hi.
Since recently, searching text in a web page can crash the process.
For instance, on this web page (http://gtk-rs.org/docs/gtk/trait.WidgetExt.html) I search for &quot;event&quot; in Epiphany and press down the Enter key (without releasing it) and it will eventually crash.
Thanks to fix this issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1412714</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-04-08 08:27:40 -0700</bug_when>
    <thetext>Please post a backtrace</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1415185</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-04-17 09:47:22 -0700</bug_when>
    <thetext>Closing since no backtrace was provided</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1415205</commentid>
    <comment_count>3</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2018-04-17 10:28:49 -0700</bug_when>
    <thetext>I can reproduce the issue in Debian Sid, webkit2gtk 2.20.0

(gdb)  bt
#0  0x00007f2acc0e40fc in WTFCrash() () at ./Source/WTF/wtf/Assertions.cpp:271
#1  0x00007f2ad134f0bd in WTF::VectorBufferBase&lt;WebCore::InlineTextBox::StyledMarkedText, WTF::FastMalloc&gt;::allocateBuffer(unsigned long) (newCapacity=&lt;optimized out&gt;, this=&lt;optimized out&gt;) at ./obj-x86_64-linux-gnu/DerivedSources/ForwardingHeaders/wtf/Vector.h:267
#2  0x00007f2ad134f0bd in WTF::Vector&lt;WebCore::InlineTextBox::StyledMarkedText, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;::reserveInitialCapacity(unsigned long) (initialCapacity=&lt;optimized out&gt;, this=&lt;optimized out&gt;) at ./obj-x86_64-linux-gnu/DerivedSources/ForwardingHeaders/wtf/Vector.h:1216
#3  0x00007f2ad134f0bd in WebCore::InlineTextBox::subdivideAndResolveStyle(WTF::Vector&lt;WebCore::MarkedText, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt; const&amp;, WebCore::InlineTextBox::MarkedTextStyle const&amp;, WebCore::PaintInfo const&amp;) (this=this@entry=0x7f2a03e009a0, textsToSubdivide=..., baseStyle=..., paintInfo=...)
    at ./Source/WebCore/rendering/InlineTextBox.cpp:790
#4  0x00007f2ad1356bf5 in WebCore::InlineTextBox::paint(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;, WebCore::LayoutUnit, WebCore::LayoutUnit) (this=0x7f2a03e009a0, paintInfo=..., paintOffset=...) at ./Source/WebCore/rendering/InlineTextBox.cpp:519
#5  0x00007f2ad1355959 in WebCore::InlineFlowBox::paint(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;, WebCore::LayoutUnit, WebCore::LayoutUnit) (this=this@entry=0x7f2a03003678, paintInfo=..., paintOffset=..., lineTop=..., lineBottom=...) at ./Source/WebCore/rendering/InlineFlowBox.cpp:1208
#6  0x00007f2ad150a2fc in WebCore::RootInlineBox::paint(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;, WebCore::LayoutUnit, WebCore::LayoutUnit) (this=0x7f2a03003678, paintInfo=..., paintOffset=..., lineTop=..., lineBottom=...) at ./Source/WebCore/rendering/RootInlineBox.cpp:170
#7  0x00007f2ad1476431 in WebCore::RenderLineBoxList::paint(WebCore::RenderBoxModelObject*, WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;) const (this=0x7f2a30a001f8, renderer=0x7f2a30a00108, paintInfo=..., paintOffset=...) at ./Source/WebCore/rendering/RenderLineBoxList.cpp:260
#8  0x00007f2ad1366bd7 in WebCore::RenderBlock::paintContents(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;) (this=&lt;optimized out&gt;, paintInfo=..., paintOffset=...)
    at ./Source/WebCore/rendering/RenderBlock.cpp:1111
#9  0x00007f2ad13832af in WebCore::RenderBlock::paintObject(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;) (this=0x7f2a30a00108, paintInfo=..., paintOffset=...)
    at ./Source/WebCore/rendering/RenderBlock.cpp:1247
#10 0x00007f2ad1362b77 in WebCore::RenderBlock::paint(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;) (this=0x7f2a30a00108, paintInfo=..., paintOffset=...)
    at ./Source/WebCore/rendering/RenderBlock.cpp:1090
#11 0x00007f2ad1366cc5 in WebCore::RenderBlock::paintChild(WebCore::RenderBox&amp;, WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;, WebCore::PaintInfo&amp;, bool, WebCore::RenderBlock::PaintBlockType) (this=this@entry=0x7f2a38300738, child=..., paintInfo=..., paintOffset=..., paintInfoForChild=..., usePrintRect=usePrintRect@entry=false, paintType=WebCore::RenderBlock::PaintAsBlock) at ./Source/WebCore/rendering/RenderBlock.cpp:1167
#12 0x00007f2ad1367086 in WebCore::RenderBlock::paintChildren(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;, WebCore::PaintInfo&amp;, bool) (this=0x7f2a38300738, paintInfo=..., paintOffset=..., paintInfoForChild=..., usePrintRect=false) at ./Source/WebCore/rendering/RenderBlock.cpp:1131
#13 0x00007f2ad1366bb5 in WebCore::RenderBlock::paintContents(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;) (this=&lt;optimized out&gt;, paintInfo=..., paintOffset=...)
    at ./Source/WebCore/rendering/RenderBlock.cpp:1124
#14 0x00007f2ad13832af in WebCore::RenderBlock::paintObject(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;) (this=0x7f2a38300738, paintInfo=..., paintOffset=...)
    at ./Source/WebCore/rendering/RenderBlock.cpp:1247
#15 0x00007f2ad1362b77 in WebCore::RenderBlock::paint(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;) (this=0x7f2a38300738, paintInfo=..., paintOffset=...)
    at ./Source/WebCore/rendering/RenderBlock.cpp:1090
#16 0x00007f2ad1366cc5 in WebCore::RenderBlock::paintChild(WebCore::RenderBox&amp;, WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;, WebCore::PaintInfo&amp;, bool, WebCore::RenderBlock::PaintBlockType) (this=this@entry=0x7f2a38300528, child=..., paintInfo=..., paintOffset=..., paintInfoForChild=..., usePrintRect=usePrintRect@entry=false, paintType=WebCore::RenderBlock::PaintAsBlock) at ./Source/WebCore/rendering/RenderBlock.cpp:1167
#17 0x00007f2ad1367086 in WebCore::RenderBlock::paintChildren(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;, WebCore::PaintInfo&amp;, bool) (this=0x7f2a38300528, paintInfo=..., paintOffset=..., paintInfoForChild=..., usePrintRect=false) at ./Source/WebCore/rendering/RenderBlock.cpp:1131
#18 0x00007f2ad1366bb5 in WebCore::RenderBlock::paintContents(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;) (this=&lt;optimized out&gt;, paintInfo=..., paintOffset=...)
    at ./Source/WebCore/rendering/RenderBlock.cpp:1124
#19 0x00007f2ad13832af in WebCore::RenderBlock::paintObject(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;) (this=0x7f2a38300528, paintInfo=..., paintOffset=...)
    at ./Source/WebCore/rendering/RenderBlock.cpp:1247
#20 0x00007f2ad1362b77 in WebCore::RenderBlock::paint(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;) (this=0x7f2a38300528, paintInfo=..., paintOffset=...)
    at ./Source/WebCore/rendering/RenderBlock.cpp:1090
#21 0x00007f2ad1366cc5 in WebCore::RenderBlock::paintChild(WebCore::RenderBox&amp;, WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;, WebCore::PaintInfo&amp;, bool, WebCore::RenderBlock::PaintBlockType) (this=this@entry=0x7f2a38300420, child=..., paintInfo=..., paintOffset=..., paintInfoForChild=..., usePrintRect=usePrintRect@entry=false, paintType=WebCore::RenderBlock::PaintAsBlock) at ./Source/WebCore/rendering/RenderBlock.cpp:1167
#22 0x00007f2ad1367086 in WebCore::RenderBlock::paintChildren(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;, WebCore::PaintInfo&amp;, bool) (this=0x7f2a38300420, paintInfo=..., paintOffset=..., paintInfoForChild=..., usePrintRect=false) at ./Source/WebCore/rendering/RenderBlock.cpp:1131
#23 0x00007f2ad1366bb5 in WebCore::RenderBlock::paintContents(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;) (this=&lt;optimized out&gt;, paintInfo=..., paintOffset=...)
---Type &lt;return&gt; to continue, or q &lt;return&gt; to quit---
    at ./Source/WebCore/rendering/RenderBlock.cpp:1124
#24 0x00007f2ad13832af in WebCore::RenderBlock::paintObject(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;) (this=0x7f2a38300420, paintInfo=..., paintOffset=...)
    at ./Source/WebCore/rendering/RenderBlock.cpp:1247
#25 0x00007f2ad1362b77 in WebCore::RenderBlock::paint(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;) (this=0x7f2a38300420, paintInfo=..., paintOffset=...)
    at ./Source/WebCore/rendering/RenderBlock.cpp:1090
#26 0x00007f2ad1366cc5 in WebCore::RenderBlock::paintChild(WebCore::RenderBox&amp;, WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;, WebCore::PaintInfo&amp;, bool, WebCore::RenderBlock::PaintBlockType) (this=this@entry=0x7f2a38300210, child=..., paintInfo=..., paintOffset=..., paintInfoForChild=..., usePrintRect=usePrintRect@entry=false, paintType=WebCore::RenderBlock::PaintAsBlock) at ./Source/WebCore/rendering/RenderBlock.cpp:1167
#27 0x00007f2ad1367086 in WebCore::RenderBlock::paintChildren(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;, WebCore::PaintInfo&amp;, bool) (this=0x7f2a38300210, paintInfo=..., paintOffset=..., paintInfoForChild=..., usePrintRect=false) at ./Source/WebCore/rendering/RenderBlock.cpp:1131
#28 0x00007f2ad1366bb5 in WebCore::RenderBlock::paintContents(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;) (this=&lt;optimized out&gt;, paintInfo=..., paintOffset=...)
    at ./Source/WebCore/rendering/RenderBlock.cpp:1124
#29 0x00007f2ad13832af in WebCore::RenderBlock::paintObject(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;) (this=0x7f2a38300210, paintInfo=..., paintOffset=...)
    at ./Source/WebCore/rendering/RenderBlock.cpp:1247
#30 0x00007f2ad1362b77 in WebCore::RenderBlock::paint(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;) (this=0x7f2a38300210, paintInfo=..., paintOffset=...)
    at ./Source/WebCore/rendering/RenderBlock.cpp:1090
#31 0x00007f2ad143440b in WebCore::RenderLayer::paintForegroundForFragmentsWithPhase(WebCore::PaintPhase, WTF::Vector&lt;WebCore::LayerFragment, 1ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt; const&amp;, WebCore::GraphicsContext&amp;, WebCore::RenderLayer::LayerPaintingInfo const&amp;, unsigned int, WebCore::RenderObject*) (this=this@entry=
    0x7f2a590a0480, phase=phase@entry=WebCore::PaintPhaseForeground, layerFragments=..., context=..., localPaintingInfo=..., paintBehavior=paintBehavior@entry=2048, subtreePaintRootForRenderer=0x0) at ./Source/WebCore/rendering/RenderLayer.cpp:4847
#32 0x00007f2ad14436e2 in WebCore::RenderLayer::paintForegroundForFragments(WTF::Vector&lt;WebCore::LayerFragment, 1ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt; const&amp;, WebCore::GraphicsContext&amp;, WebCore::GraphicsContext&amp;, WebCore::LayoutRect const&amp;, bool, WebCore::RenderLayer::LayerPaintingInfo const&amp;, unsigned int, WebCore::RenderObject*) (this=this@entry=0x7f2a590a0480, layerFragments=..., context=..., contextForTransparencyLayer=..., transparencyPaintDirtyRect=..., haveTransparency=haveTransparency@entry=false, localPaintingInfo=..., paintBehavior=2048, subtreePaintRootForRenderer=0x0) at ./Source/WebCore/rendering/RenderLayer.cpp:4824
#33 0x00007f2ad145b96e in WebCore::RenderLayer::paintLayerContents(WebCore::GraphicsContext&amp;, WebCore::RenderLayer::LayerPaintingInfo const&amp;, unsigned int) (this=&lt;optimized out&gt;, context=..., paintingInfo=..., paintFlags=paintFlags@entry=96) at ./Source/WebCore/rendering/RenderLayer.cpp:4431
#34 0x00007f2ad145d029 in WebCore::RenderLayerBacking::paintIntoLayer(WebCore::GraphicsLayer const*, WebCore::GraphicsContext&amp;, WebCore::IntRect const&amp;, unsigned int, unsigned int) (this=0x7f2a333772c0, graphicsLayer=0x7f2a6857f200, context=..., paintDirtyRect=..., paintBehavior=2048, paintingPhase=&lt;optimized out&gt;)
    at ./Source/WebCore/rendering/RenderLayerBacking.cpp:2525
#35 0x00007f2ad145d2fe in WebCore::RenderLayerBacking::paintContents(WebCore::GraphicsLayer const*, WebCore::GraphicsContext&amp;, unsigned int, WebCore::FloatRect const&amp;, unsigned int) (this=0x7f2a333772c0, graphicsLayer=0x7f2a6857f200, context=..., paintingPhase=3, clip=..., layerPaintBehavior=2)
    at ./Source/WebCore/rendering/RenderLayerBacking.cpp:2572
#36 0x00007f2ad1253a3e in WebCore::GraphicsLayer::paintGraphicsLayerContents(WebCore::GraphicsContext&amp;, WebCore::FloatRect const&amp;, unsigned int) (this=this@entry=0x7f2a6857f200, context=..., clip=..., layerPaintBehavior=layerPaintBehavior@entry=0) at ./Source/WebCore/platform/graphics/GraphicsLayer.cpp:434
#37 0x00007f2ad05694bf in Nicosia::PaintingEngineBasic::&lt;lambda(WebCore::GraphicsContext&amp;)&gt;::operator() (context=..., __closure=0x7ffcf32ee460)
    at ./Source/WebCore/platform/graphics/nicosia/NicosiaPaintingEngineBasic.cpp:64
#38 0x00007f2ad05694bf in Nicosia::PaintingContext::paint&lt;Nicosia::PaintingEngineBasic::paint(WebCore::GraphicsLayer&amp;, WTF::Ref&lt;Nicosia::Buffer&gt;&amp;&amp;, const WebCore::IntRect&amp;, const WebCore::IntRect&amp;, const WebCore::IntRect&amp;, float)::&lt;lambda(WebCore::GraphicsContext&amp;)&gt; &gt; (paintFunctor=..., buffer=...)
    at ./Source/WebCore/platform/graphics/nicosia/NicosiaPaintingContext.h:48
#39 0x00007f2ad05694bf in Nicosia::PaintingEngineBasic::paint(WebCore::GraphicsLayer&amp;, WTF::Ref&lt;Nicosia::Buffer, WTF::DumbPtrTraits&lt;Nicosia::Buffer&gt; &gt;&amp;&amp;, WebCore::IntRect const&amp;, WebCore::IntRect const&amp;, WebCore::IntRect const&amp;, float) (this=this@entry=0x7f2a53290b08, layer=
    ..., buffer=buffer@entry=&lt;unknown type in /usr/lib/debug/.build-id/8f/da266c836ca74e8c2affb15bf7b4081fac83fe.debug, CU 0xfda9219, DIE 0xfe09132&gt;, sourceRect=..., mappedSourceRect=..., targetRect=..., contentsScale=contentsScale@entry=2) at ./Source/WebCore/platform/graphics/nicosia/NicosiaPaintingEngineBasic.cpp:47
#40 0x00007f2ad0564fd3 in WebCore::CoordinatedGraphicsLayer::updateContentBuffers() (this=0x7f2a6857f200)
    at ./Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:977
#41 0x00007f2ad0565183 in WebCore::CoordinatedGraphicsLayer::updateContentBuffersIncludingSubLayers() (this=0x7f2a6857f200)
    at ./Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:927
#42 0x00007f2ad05651ac in WebCore::CoordinatedGraphicsLayer::updateContentBuffersIncludingSubLayers() (this=&lt;optimized out&gt;)
    at ./Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:930
#43 0x00007f2ad05651ac in WebCore::CoordinatedGraphicsLayer::updateContentBuffersIncludingSubLayers() (this=&lt;optimized out&gt;)
---Type &lt;return&gt; to continue, or q &lt;return&gt; to quit---
    at ./Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:930
#44 0x00007f2ad05651ac in WebCore::CoordinatedGraphicsLayer::updateContentBuffersIncludingSubLayers() (this=&lt;optimized out&gt;)
    at ./Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:930
#45 0x00007f2ad05651ac in WebCore::CoordinatedGraphicsLayer::updateContentBuffersIncludingSubLayers() (this=&lt;optimized out&gt;)
    at ./Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:930
#46 0x00007f2ad05651ac in WebCore::CoordinatedGraphicsLayer::updateContentBuffersIncludingSubLayers() (this=&lt;optimized out&gt;)
    at ./Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:930
#47 0x00007f2ad05651ac in WebCore::CoordinatedGraphicsLayer::updateContentBuffersIncludingSubLayers() (this=this@entry=0x7f2a685c8400)
    at ./Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:930
#48 0x00007f2ad0542e10 in WebKit::CompositingCoordinator::flushPendingLayerChanges() (this=this@entry=0x7f2ab84e53b8)
    at ./Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.cpp:124
#49 0x00007f2ad05430cc in WebKit::CoordinatedLayerTreeHost::layerFlushTimerFired() (this=0x7f2ab84e5380)
    at ./Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:199
#50 0x00007f2ad05434b8 in WebKit::CoordinatedLayerTreeHost::renderNextFrame() (this=0x7f2ab84e5380)
    at ./Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:172
#51 0x00007f2ad03efee4 in WebKit::ThreadedCompositor::handleDisplayRefreshMonitorUpdate(bool) (this=0x7f2a52edaa80, hasBeenRescheduled=&lt;optimized out&gt;)
    at ./Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:354
#52 0x00007f2acc128493 in WTF::RunLoop::TimerBase::&lt;lambda(gpointer)&gt;::operator() (__closure=0x0, userData=0x7f2ab8eb7ae0) at ./Source/WTF/wtf/glib/RunLoopGLib.cpp:170
#53 0x00007f2acc128493 in WTF::RunLoop::TimerBase::&lt;lambda(gpointer)&gt;::_FUN(gpointer) () at ./Source/WTF/wtf/glib/RunLoopGLib.cpp:176
#54 0x00007f2accf180f5 in g_main_context_dispatch () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#55 0x00007f2accf184c0 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#56 0x00007f2accf187d2 in g_main_loop_run () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#57 0x00007f2acc1288a0 in WTF::RunLoop::run() () at ./Source/WTF/wtf/glib/RunLoopGLib.cpp:96
#58 0x00007f2ad054d0e8 in WebKit::ChildProcessMain&lt;WebKit::WebProcess, WebKit::WebProcessMain&gt;(int, char**) (argc=&lt;optimized out&gt;, argv=0x7ffcf32eea98)
    at ./Source/WebKit/Shared/unix/ChildProcessMain.h:61
#59 0x00007f2acf443a87 in __libc_start_main (main=
    0x55dcfc1ca8d0 &lt;main(int, char**)&gt;, argc=3, argv=0x7ffcf32eea98, init=&lt;optimized out&gt;, fini=&lt;optimized out&gt;, rtld_fini=&lt;optimized out&gt;, stack_end=0x7ffcf32eea88)
    at ../csu/libc-start.c:310
#60 0x000055dcfc1ca95a in _start ()
(gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453818</commentid>
    <comment_count>4</comment_count>
    <who name="Beau Adkins">beau.adkins</who>
    <bug_when>2018-08-26 23:40:25 -0700</bug_when>
    <thetext>I have been tracking this one too. Bisection reveals it was introduced in [226138]. Don&apos;t understand the code well enough to offer a correction though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453822</commentid>
    <comment_count>5</comment_count>
    <who name="Ms2ger (he/him; ⌚ UTC+1/+2)">Ms2ger</who>
    <bug_when>2018-08-27 01:10:29 -0700</bug_when>
    <thetext>Daniel, apparently this is related to a patch of yours. Could you take a look?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454249</commentid>
    <comment_count>6</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2018-08-27 18:02:32 -0700</bug_when>
    <thetext>The stack-trace in comment 3 mens that subdivide() at &lt;https://trac.webkit.org/browser/trunk/Source/WebCore/rendering/InlineTextBox.cpp?rev=235148#L794&gt; is returning an empty Vector. I have not had success reproducing this issue using find-in-page in Safari :( Though I do know of a test case that can trigger the same issue and will post shortly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454530</commentid>
    <comment_count>7</comment_count>
      <attachid>348337</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2018-08-28 13:44:55 -0700</bug_when>
    <thetext>Created attachment 348337
Test case - will cause crash</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454541</commentid>
    <comment_count>8</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2018-08-28 14:02:08 -0700</bug_when>
    <thetext>&lt;rdar://problem/41804994&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454572</commentid>
    <comment_count>9</comment_count>
      <attachid>348349</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2018-08-28 15:12:17 -0700</bug_when>
    <thetext>Created attachment 348349
Patch and layout test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454613</commentid>
    <comment_count>10</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-08-28 16:16:08 -0700</bug_when>
    <thetext>Thank you Daniel! Nice test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454614</commentid>
    <comment_count>11</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-08-28 16:18:28 -0700</bug_when>
    <thetext>(In reply to Beau Adkins from comment #4)
&gt; I have been tracking this one too. Bisection reveals it was introduced in
&gt; [226138]. Don&apos;t understand the code well enough to offer a correction though.

Also: good bisection, thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455000</commentid>
    <comment_count>12</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2018-08-29 16:35:45 -0700</bug_when>
    <thetext>Committed r235485: &lt;https://trac.webkit.org/changeset/235485&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455004</commentid>
    <comment_count>13</comment_count>
      <attachid>348349</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2018-08-29 16:37:03 -0700</bug_when>
    <thetext>Comment on attachment 348349
Patch and layout test

View in context: https://bugs.webkit.org/attachment.cgi?id=348349&amp;action=review

&gt; Source/WebCore/ChangeLog:3
&gt; +        REGRESSION (r226138): WebCore::subdivide() may return an empty an empty vector; Web process can crash when performing find in Epiphany

&quot;an empty&quot; is repeated twice.

&gt; LayoutTests/ChangeLog:3
&gt; +        REGRESSION (r226138): WebCore::subdivide() may return an empty an empty vector; Web process can crash when performing find in Epiphany

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455012</commentid>
    <comment_count>14</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2018-08-29 16:46:18 -0700</bug_when>
    <thetext>(In reply to Said Abou-Hallawa from comment #13)
&gt; Comment on attachment 348349 [details]
&gt; Patch and layout test
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=348349&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:3
&gt; &gt; +        REGRESSION (r226138): WebCore::subdivide() may return an empty an empty vector; Web process can crash when performing find in Epiphany
&gt; 
&gt; &quot;an empty&quot; is repeated twice.
&gt; 
&gt; &gt; LayoutTests/ChangeLog:3
&gt; &gt; +        REGRESSION (r226138): WebCore::subdivide() may return an empty an empty vector; Web process can crash when performing find in Epiphany
&gt; 
&gt; Ditto.

I fixed this before landing.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>348337</attachid>
            <date>2018-08-28 13:44:55 -0700</date>
            <delta_ts>2018-08-28 13:45:23 -0700</delta_ts>
            <desc>Test case - will cause crash</desc>
            <filename>test.html</filename>
            <type>text/html</type>
            <size>456</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">PGh0bWw+DQo8aGVhZD4NCjxzdHlsZT4NCiNmaXJzdCB7DQogICAgd3JpdGluZy1tb2RlOiB2ZXJ0
aWNhbC1ybDsNCiAgICAtd2Via2l0LXRleHQtY29tYmluZTogaG9yaXpvbnRhbDsNCn0NCjwvc3R5
bGU+DQo8c2NyaXB0Pg0KZnVuY3Rpb24gcnVuVGVzdCgpDQp7DQogICAgdmFyIHNlY29uZCA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZWNvbmQiKTsNCiAgICB2YXIgcmFuZ2UgPSBkb2N1bWVu
dC5jYXJldFJhbmdlRnJvbVBvaW50KCk7DQogICAgcmFuZ2Uuc3Vycm91bmRDb250ZW50cyhzZWNv
bmQpOyAvLyBDcmFzaA0KfQ0KPC9zY3JpcHQ+DQo8L2hlYWQ+DQo8Ym9keSBvbmxvYWQ9InJ1blRl
c3QoKSI+DQo8ZGl2IGlkPSJmaXJzdCI+QTwvZGl2Pg0KPHNwYW4gaWQ9InNlY29uZCI+PC9zcGFu
PiA8IS0tIE11c3QgYmUgYW4gaW5saW5lIGVsZW1lbnQuIC0tPg0KPC9ib2R5Pg0KPC9odG1sPg0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348349</attachid>
            <date>2018-08-28 15:12:17 -0700</date>
            <delta_ts>2018-08-28 16:09:59 -0700</delta_ts>
            <desc>Patch and layout test</desc>
            <filename>bug-184390-20180828151216.patch</filename>
            <type>text/plain</type>
            <size>4210</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1MzgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTBiOWEwMmQ0OTFkM2M3
NDQwYWNlOGEyMjQxYzRlNTM1MGM1ZjUxNC4uMzhhMTdhMjJmOTVmYjc4ODliZWNmZDg4ZGVjMDVm
NTU3OTFkNzljZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE4LTA4LTI4ICBEYW5p
ZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OIChyMjI2
MTM4KTogV2ViQ29yZTo6c3ViZGl2aWRlKCkgbWF5IHJldHVybiBhbiBlbXB0eSBhbiBlbXB0eSB2
ZWN0b3I7IFdlYiBwcm9jZXNzIGNhbiBjcmFzaCB3aGVuIHBlcmZvcm1pbmcgZmluZCBpbiBFcGlw
aGFueQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0
MzkwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80MTgwNDk5ND4KKyAgICAgICAgQW5kCisgICAg
ICAgIDxyZGFyOi8vcHJvYmxlbS8zOTc3MTg2Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBTcGVjdWxhdGl2ZSBmaXggZm9yIEVwaXBoYW55LgorCisg
ICAgICAgIFRoZSBpbmxpbmUgdGV4dCBib3ggY2FuIGJlIGVtcHR5IGZvciBjb21iaW5lZCB0ZXh0
IChpLmUuIFJlbmRlckNvbWJpbmVUZXh0Ojpjb21iaW5lZFN0cmluZ0ZvclJlbmRlcmluZygpCisg
ICAgICAgIHJldHVybnMgdGhlIGVtcHR5IHN0cmluZykuIFdoZW4gdGhpcyBoYXBwZW5zIFdlYkNv
cmU6OnN1YmRpdmlkZSgpIHdpbGwgcmV0dXJuIGFuIGVtcHR5IHZlY3RvciAoc2luY2UKKyAgICAg
ICAgdGhlcmUgaXMgbm90aGluZyB0byBzdWJkaXZpZGUpLiBXZSBuZWVkIHRvIHRha2UgY2FyZSB0
byBoYW5kbGUgdGhpcyBjYXNlLgorCisgICAgICAgIFRlc3Q6IGZhc3QvdGV4dC90ZXh0LWNvbWJp
bmUtc3Vycm91bmRDb250ZW50cy1jcmFzaC5odG1sCisKKyAgICAgICAgKiByZW5kZXJpbmcvSW5s
aW5lVGV4dEJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbmxpbmVUZXh0Qm94OjpzdWJkaXZp
ZGVBbmRSZXNvbHZlU3R5bGUpOgorCiAyMDE4LTA4LTI3ICBLZWl0aCBSb2xsaW4gIDxrcm9sbGlu
QGFwcGxlLmNvbT4KIAogICAgICAgICBCdWlsZCBzeXN0ZW0gc3VwcG9ydCBmb3IgTFRPCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lVGV4dEJveC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lVGV4dEJveC5jcHAKaW5kZXggMGE3ODRjY2MzNGFm
MDFkYjEwNjQ4NmZiYzc3MzUxMzNhNTA0YzZkNC4uNTlhNzU2NTY1MmNmZThjMWQ2NWZiYTYwYmQ0
NjlkZWIyYzMyNmMxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGlu
ZVRleHRCb3guY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVUZXh0Qm94
LmNwcApAQCAtNzkyLDYgKzc5Miw4IEBAIGF1dG8gSW5saW5lVGV4dEJveDo6c3ViZGl2aWRlQW5k
UmVzb2x2ZVN0eWxlKGNvbnN0IFZlY3RvcjxNYXJrZWRUZXh0PiYgdGV4dHNUb1N1CiAgICAgICAg
IHJldHVybiB7IH07CiAKICAgICBhdXRvIG1hcmtlZFRleHRzID0gc3ViZGl2aWRlKHRleHRzVG9T
dWJkaXZpZGUpOworICAgIGlmIChtYXJrZWRUZXh0cy5pc0VtcHR5KCkpCisgICAgICAgIHJldHVy
biB7IH07CiAKICAgICAvLyBDb21wdXRlIGZyb250bW9zdCBvdmVybGFwcGluZyBzdHlsZWQgbWFy
a2VkIHRleHRzLgogICAgIFZlY3RvcjxTdHlsZWRNYXJrZWRUZXh0PiBmcm9udG1vc3RNYXJrZWRU
ZXh0czsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwppbmRleCBjZDEyYzhkNzdmYWJjYjlkMzkyYzg2NWMzM2NlNmUzY2FjMTFkNTRjLi4z
MjgwYjYyN2QyYTlhYjJmMTVhM2FkNzhmY2NlNGZjOWMzYzQ1OWE2IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTggQEAKKzIwMTgtMDgtMjggIERhbmllbCBCYXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29tPgorCisg
ICAgICAgIFJFR1JFU1NJT04gKHIyMjYxMzgpOiBXZWJDb3JlOjpzdWJkaXZpZGUoKSBtYXkgcmV0
dXJuIGFuIGVtcHR5IGFuIGVtcHR5IHZlY3RvcjsgV2ViIHByb2Nlc3MgY2FuIGNyYXNoIHdoZW4g
cGVyZm9ybWluZyBmaW5kIGluIEVwaXBoYW55CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzOTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQxODA0
OTk0PgorICAgICAgICBBbmQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM5NzcxODY3PgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhIHRlc3Qg
dG8gZW5zdXJlIHRoYXQgd2UgZG8gbm90IGNyYXNoIHdoZW4gcGFpbnRpbmcgYW4gZW1wdHkgaW5s
aW5lIHRleHQgYm94LgorCisgICAgICAgICogZmFzdC90ZXh0L3RleHQtY29tYmluZS1zdXJyb3Vu
ZENvbnRlbnRzLWNyYXNoLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC90ZXh0
L3RleHQtY29tYmluZS1zdXJyb3VuZENvbnRlbnRzLWNyYXNoLmh0bWw6IEFkZGVkLgorCiAyMDE4
LTA4LTI3ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBM
YXlvdXQgVGVzdCBmYXN0L2V2ZW50cy9kYmxjbGljay1ldmVudC1nZXRNb2RpZmllclN0YXRlLmh0
bWwgaXMgZmFpbGluZwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3RleHQtY29t
YmluZS1zdXJyb3VuZENvbnRlbnRzLWNyYXNoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3QvdGV4dC90ZXh0LWNvbWJpbmUtc3Vycm91bmRDb250ZW50cy1jcmFzaC1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uOTVjYzFiYzAyZGVlMTU3OWRkZjliNDM4NjhjMDkzNTI1YTgwOTYwNAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LWNvbWJpbmUtc3Vycm91
bmRDb250ZW50cy1jcmFzaC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACivvv7zvv7wKK1BB
U1MsIGRpZCBub3QgY3Jhc2guCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdGV4
dC1jb21iaW5lLXN1cnJvdW5kQ29udGVudHMtY3Jhc2guaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
dGV4dC90ZXh0LWNvbWJpbmUtc3Vycm91bmRDb250ZW50cy1jcmFzaC5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmJmNzA1NmM5YzA4ZWZhOWY5NzU3ZDJlZTMxMjAyNTg5M2FhYzdmNTkKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdGV4dC1jb21iaW5lLXN1cnJvdW5kQ29udGVudHMt
Y3Jhc2guaHRtbApAQCAtMCwwICsxLDI3IEBACis8IURPQ1RZUEUgaHRtbD4NCis8aHRtbD4NCis8
aGVhZD4NCis8c3R5bGU+DQorI2ZpcnN0IHsNCisgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1y
bDsNCisgICAgLXdlYmtpdC10ZXh0LWNvbWJpbmU6IGhvcml6b250YWw7DQorfQ0KKzwvc3R5bGU+
DQorPHNjcmlwdD4NCitpZiAod2luZG93LnRlc3RSdW5uZXIpDQorCXRlc3RSdW5uZXIuZHVtcEFz
VGV4dCgpOw0KKw0KK2Z1bmN0aW9uIHJ1blRlc3QoKQ0KK3sNCisgICAgdmFyIHNlY29uZCA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZWNvbmQiKTsNCisgICAgdmFyIHJhbmdlID0gZG9jdW1l
bnQuY2FyZXRSYW5nZUZyb21Qb2ludCgpOw0KKyAgICByYW5nZS5zdXJyb3VuZENvbnRlbnRzKHNl
Y29uZCk7IC8vIENyYXNoDQorfQ0KKzwvc2NyaXB0Pg0KKzwvaGVhZD4NCis8Ym9keSBvbmxvYWQ9
InJ1blRlc3QoKSI+DQorPGRpdiBpZD0iZmlyc3QiPiZuYnNwOzwvZGl2Pg0KKzxzcGFuIGlkPSJz
ZWNvbmQiPjwvc3Bhbj4gPCEtLSBNdXN0IGJlIGFuIGlubGluZSBlbGVtZW50LiAtLT4NCis8ZGl2
PlBBU1MsIGRpZCBub3QgY3Jhc2guPC9kaXY+DQorPC9ib2R5Pg0KKzwvaHRtbD4NCg==
</data>
<flag name="review"
          id="366003"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>