<?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>200711</bug_id>
          
          <creation_ts>2019-08-14 06:04:56 -0700</creation_ts>
          <short_desc>Crash in WebCore::StyledMarkupAccumulator::firstChild</short_desc>
          <delta_ts>2019-10-09 08:52:07 -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>Forms</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>199224</dup_id>
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Catanzaro">mcatanzaro</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bugs-noreply</cc>
    
    <cc>cdumez</cc>
    
    <cc>clopez</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1561137</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2019-08-14 06:04:56 -0700</bug_when>
    <thetext>Here&apos;s a short backtrace, note this=0x0 in the first frame is bad.

(gdb) bt
#0  0x00007f17c7840eb2 in WebCore::Node::firstChild() const (this=0x0)
    at ../Source/WebCore/dom/Node.h:595
#1  0x00007f17c7840eb2 in WebCore::StyledMarkupAccumulator::firstChild(WebCore::Node&amp;) (this=0x7fff31dee6a0, node=...)
    at ../Source/WebCore/editing/markup.cpp:267
#2  0x00007f17c7840eb2 in WebCore::StyledMarkupAccumulator::traverseNodesForSerialization(WebCore::Node*, WebCore::Node*, WebCore::StyledMarkupAccumulator::NodeTraversalMode)
    (this=0x7fff31dee6a0, startNode=&lt;optimized out&gt;, pastEnd=0x7f174c74e0e8, traversalMode=&lt;optimized out&gt;) at ../Source/WebCore/editing/markup.cpp:631
#3  0x00007f17c7841a25 in WebCore::StyledMarkupAccumulator::serializeNodes(WebCore::Position const&amp;, WebCore::Position const&amp;)
    (this=this@entry=0x7fff31dee6a0, start=..., end=...)
    at DerivedSources/ForwardingHeaders/wtf/DumbPtrTraits.h:43
#4  0x00007f17c78420ed in WebCore::serializePreservingVisualAppearanceInternal(WebCore::Position const&amp;, WebCore::Position const&amp;, WTF::Vector&lt;WebCore::Node*, 0, WTF::CrashOnOverflow, 16&gt;*, WebCore::ResolveURLs, WebCore::SerializeComposedTree, WebCore::AnnotateForInterchange, WebCore::ConvertBlocksToInlines, WebCore::MSOListMode)
    (start=..., end=..., nodes=0x0, urlsToResolve=&lt;optimized out&gt;, serializeComposedTree=&lt;optimized out&gt;, annotate=WebCore::AnnotateForInterchange::Yes, convertBlocksToInlines=WebCore::ConvertBlocksToInlines::No, msoListMode=WebCore::MSOListMode::DoNotPreserve) at ../Source/WebCore/editing/markup.cpp:865
#5  0x00007f17c7843670 in WebCore::serializePreservingVisualAppearance(WebCore::VisibleSelection const&amp;, WebCore::ResolveURLs, WebCore::SerializeComposedTree, WTF::Vector&lt;WebCore::Node*, 0ul, WTF::CrashOnOverflow, 16ul&gt;*) (selection=..., resolveURLs=resolveURLs@entry=WebCore::ResolveURLs::YesExcludingLocalFileURLsForPrivacy, serializeComposedTree=serializeComposedTree@entry=WebCore::SerializeComposedTree::No, nodes=nodes@entry=0x0) at ../Source/WebCore/dom/Node.h:700
#6  0x00007f17c6bf1f59 in WebKit::WebEditorClient::updateGlobalSelection(WebCore::Frame*) (this=&lt;optimized out&gt;, frame=0x7f17bde80210) at DerivedSources/ForwardingHeaders/WebCore/FrameSelection.h:152
#7  0x00007f17c77ade61 in WebCore::Editor::respondToChangedSelection(WebCore::VisibleSelection const&amp;, WTF::OptionSet&lt;WebCore::FrameSelection::SetSelectionOption&gt;) (this=0x7f17bdebb138, options=...) at ../Source/WebCore/editing/Editor.cpp:3570
#8  0x00007f17c77c14b1 in WebCore::FrameSelection::setSelectionWithoutUpdatingAppearance(WebCore::VisibleSelection const&amp;, WTF::OptionSet&lt;WebCore::FrameSelection::SetSelectionOption&gt;, WebCore::FrameSelection::CursorAlignOnScroll, WebCore::TextGranularity) (this=this@entry=0x7f17bde56000, newSelectionPossiblyWithoutDirection=..., options=..., align=align@entry=WebCore::FrameSelection::AlignCursorOnScrollIfNeeded, granularity=granularity@entry=WebCore::CharacterGranularity) at /usr/include/c++/9.1.0/bits/unique_ptr.h:357
#9  0x00007f17c77bc778 in WebCore::FrameSelection::setSelection(WebCore::VisibleSelection const&amp;, WTF::OptionSet&lt;WebCore::FrameSelection::SetSelectionOption&gt;, WebCore::AXTextStateChangeIntent, WebCore::FrameSelection::CursorAlignOnScroll, WebCore::TextGranularity) (this=this@entry=0x7f17bde56000, selection=..., options=options@entry=..., intent=..., align=align@entry=WebCore::FrameSelection::AlignCursorOnScrollIfNeeded, granularity=WebCore::CharacterGranularity) at ../Source/WebCore/editing/FrameSelection.cpp:388
#10 0x00007f17c77be7ae in WebCore::FrameSelection::setSelectionByMouseIfDifferent(WebCore::VisibleSelection const&amp;, WebCore::TextGranularity, WebCore::FrameSelection::EndPointsAdjustmentMode) (this=0x7f17bde56000, passedNewSelection=..., granularity=WebCore::CharacterGranularity, endpointsAdjustmentMode=endpointsAdjustmentMode@entry=WebCore::FrameSelection::AdjustEndpointsAtBidiBoundary) at ../Source/WebCore/editing/FrameSelection.cpp:315
#11 0x00007f17c7be7b12 in WebCore::EventHandler::updateSelectionForMouseDrag(WebCore::HitTestResult const&amp;) (this=this@entry=0x7f17bde5de00, hitTestResult=...) at ../Source/WebCore/editing/FrameSelection.h:173
#12 0x00007f17c7bfd4a5 in WebCore::EventHandler::handleMouseDraggedEvent(WebCore::MouseEventWithHitTestResults const&amp;, WebCore::CheckDragHysteresis) (checkDragHysteresis=&lt;optimized out&gt;, event=..., this=0x7f17bde5de00) at ../Source/WebCore/page/MouseEventWithHitTestResults.h:35
#13 0x00007f17c7bfd4a5 in WebCore::EventHandler::handleMouseDraggedEvent(WebCore::MouseEventWithHitTestResults const&amp;, WebCore::CheckDragHysteresis) (this=0x7f17bde5de00, event=..., checkDragHysteresis=&lt;optimized out&gt;) at ../Source/WebCore/page/EventHandler.cpp:874
#14 0x00007f17c7c0dd7f in WebCore::EventHandler::handleMouseMoveEvent(WebCore::PlatformMouseEvent const&amp;, WebCore::HitTestResult*, bool) (this=0x7f17bde5de00, platformMouseEvent=..., hoveredNode=&lt;optimized out&gt;, onlyUpdateScrollbars=&lt;optimized out&gt;) at ../Source/WebCore/page/EventHandler.cpp:2049
#15 0x00007f17c7c0d4ad in WebCore::EventHandler::mouseMoved(WebCore::PlatformMouseEvent const&amp;) (this=0x7f17bde5de00, event=...) at ../Source/WebCore/page/EventHandler.cpp:1903
#16 0x00007f17c811c09c in WebCore::UserInputBridge::handleMouseMoveEvent(WebCore::PlatformMouseEvent const&amp;, WebCore::InputSource) (this=&lt;optimized out&gt;, mouseEvent=...) at /usr/include/c++/9.1.0/bits/unique_ptr.h:357
#17 0x00007f17c6c02370 in WebKit::handleMouseEvent (page=0x7f175c3f0000, mouseEvent=...) at /usr/include/c++/9.1.0/bits/unique_ptr.h:357
#18 0x00007f17c6c02370 in WebKit::WebPage::mouseEvent(WebKit::WebMouseEvent const&amp;) (this=0x7f175c3f0000, mouseEvent=...) at ../Source/WebKit/WebProcess/WebPage/WebPage.cpp:2748
#19 0x00007f17c67670c3 in IPC::callMemberFunctionImpl&lt;WebKit::WebPage, void (WebKit::WebPage::*)(WebKit::WebMouseEvent const&amp;), std::tuple&lt;WebKit::WebMouseEvent&gt;, 0ul&gt;(WebKit::WebPage*, void (WebKit::WebPage::*)(WebKit::WebMouseEvent const&amp;), std::tuple&lt;WebKit::WebMouseEvent&gt;&amp;&amp;, std::integer_sequence&lt;unsigned long, 0ul&gt;) (args=..., function=(void (WebKit::WebPage::*)(WebKit::WebPage * const, const WebKit::WebMouseEvent &amp;)) 0x7f17c6c01ea0 &lt;WebKit::WebPage::mouseEvent(WebKit::WebMouseEvent const&amp;)&gt;, object=0x7f175c3f0000) at /usr/include/c++/9.1.0/tuple:1332
#20 0x00007f17c67670c3 in IPC::callMemberFunction&lt;WebKit::WebPage, void (WebKit::WebPage::*)(WebKit::WebMouseEvent const&amp;), std::tuple&lt;WebKit::WebMouseEvent&gt;, std::integer_sequence&lt;unsigned long, 0ul&gt; &gt;(std::tuple&lt;WebKit::WebMouseEvent&gt;&amp;&amp;, WebKit::WebPage*, void (WebKit::WebPage::*)(WebKit::WebMouseEvent const&amp;)) (function=(void (WebKit::WebPage::*)(WebKit::WebPage * const, const WebKit::WebMouseEvent &amp;)) 0x7f17c6c01ea0 &lt;WebKit::WebPage::mouseEvent(WebKit::WebMouseEvent const&amp;)&gt;, object=0x7f175c3f0000, args=...) at ../Source/WebKit/Platform/IPC/HandleMessage.h:47
#21 0x00007f17c67670c3 in IPC::handleMessage&lt;Messages::WebPage::MouseEvent, WebKit::WebPage, void (WebKit::WebPage::*)(WebKit::WebMouseEvent const&amp;)&gt;(IPC::Decoder&amp;, WebKit::WebPage*, void (WebKit::WebPage::*)(WebKit::WebMouseEvent const&amp;)) (decoder=..., object=object@entry=0x7f175c3f0000, function=(void (WebKit::WebPage::*)(WebKit::WebPage * const, const WebKit::WebMouseEvent &amp;)) 0x7f17c6c01ea0 &lt;WebKit::WebPage::mouseEvent(WebKit::WebMouseEvent const&amp;)&gt;) at ../Source/WebKit/Platform/IPC/HandleMessage.h:120
#22 0x00007f17c6764250 in WebKit::WebPage::didReceiveWebPageMessage(IPC::Connection&amp;, IPC::Decoder&amp;) (this=0x7f175c3f0000, connection=..., decoder=...) at DerivedSources/WebKit/WebPageMessageReceiver.cpp:608
#23 0x00007f17c68522e3 in IPC::MessageReceiverMap::dispatchMessage(IPC::Connection&amp;, IPC::Decoder&amp;) (this=this@entry=0x55e4ad972938, connection=..., decoder=...) at ../Source/WebKit/Platform/IPC/MessageReceiverMap.cpp:123
#24 0x00007f17c6aa018b in WebKit::WebProcess::didReceiveMessage(IPC::Connection&amp;, IPC::Decoder&amp;) (this=0x55e4ad9728d0, connection=..., decoder=...) at ../Source/WebKit/Shared/AuxiliaryProcess.h:88
#25 0x00007f17c684b164 in IPC::Connection::dispatchMessage(IPC::Decoder&amp;) (this=0x7f17bdee7000, decoder=...) at ../Source/WebKit/Platform/IPC/Connection.cpp:1001
#26 0x00007f17c684c9cd in IPC::Connection::dispatchMessage(std::unique_ptr&lt;IPC::Decoder, std::default_delete&lt;IPC::Decoder&gt; &gt;) (this=0x7f17bdee7000, message=...) at /usr/include/c++/9.1.0/bits/unique_ptr.h:357
#27 0x00007f17c684da9f in IPC::Connection::dispatchOneIncomingMessage() (this=0x7f17bdee7000) at /usr/include/c++/9.1.0/bits/move.h:74
#28 0x00007f17c4847fc5 in WTF::Function&lt;void ()&gt;::operator()() const (this=&lt;synthetic pointer&gt;) at ../Source/WTF/wtf/Lock.h:84
#29 0x00007f17c4847fc5 in WTF::RunLoop::performWork() (this=0x7f17bdefa000) at ../Source/WTF/wtf/RunLoop.cpp:106
#30 0x00007f17c4894a0d in WTF::RunLoop::&lt;lambda(gpointer)&gt;::operator() (__closure=0x0, userData=&lt;optimized out&gt;) at ../Source/WTF/wtf/glib/RunLoopGLib.cpp:68
#31 0x00007f17c4894a0d in WTF::RunLoop::&lt;lambda(gpointer)&gt;::_FUN(gpointer) () at ../Source/WTF/wtf/glib/RunLoopGLib.cpp:70
#32 0x00007f17c4ee448e in g_main_dispatch (context=0x55e4ad8c2ad0) at ../glib/gmain.c:3179
#33 0x00007f17c4ee448e in g_main_context_dispatch (context=context@entry=0x55e4ad8c2ad0) at ../glib/gmain.c:3844
#34 0x00007f17c4ee4840 in g_main_context_iterate (context=0x55e4ad8c2ad0, block=block@entry=1, dispatch=dispatch@entry=1, self=&lt;optimized out&gt;) at ../glib/gmain.c:3917
#35 0x00007f17c4ee4b33 in g_main_loop_run (loop=0x55e4ad96b560) at ../glib/gmain.c:4111
#36 0x00007f17c4895480 in WTF::RunLoop::run() () at ../Source/WTF/wtf/glib/RunLoopGLib.cpp:96
#37 0x00007f17c6c4503a in WebKit::AuxiliaryProcessMain&lt;WebKit::WebProcess, WebKit::WebProcessMain&gt;(int, char**) (argc=3, argv=&lt;optimized out&gt;) at ../Source/WebKit/Shared/unix/AuxiliaryProcessMain.h:47
#38 0x00007f17c5db0173 in __libc_start_main (main=0x55e4ad5407e0 &lt;main(int, char**)&gt;, argc=3, argv=0x7fff31def7e8, init=&lt;optimized out&gt;, fini=&lt;optimized out&gt;, rtld_fini=&lt;optimized out&gt;, stack_end=0x7fff31def7d8) at ../csu/libc-start.c:308
#39 0x000055e4ad54086e in _start () at ../sysdeps/x86_64/start.S:120


In happier times, I would attach a full backtrace, but our gdb is broken right now so it crashes after a couple frames. Still, a couple frames is better than nothing. Here&apos;s what I&apos;ve got:

(gdb) bt full
#0  0x00007f17c7840eb2 in WebCore::Node::firstChild() const (this=0x0)
    at ../Source/WebCore/dom/Node.h:595
        child = &lt;optimized out&gt;
        exitedAncestors = 
                {&lt;WTF::VectorBuffer&lt;WebCore::Node*, 8&gt;&gt; = {&lt;WTF::VectorBufferBase&lt;WebCore::Node*&gt;&gt; = {m_buffer = 0x7fff31dee440, m_capacity = 8, m_size = 0}, m_inlineBuffer = {{__data = &quot;p\217.\\\027\177\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;+˂\307\027\177\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\000\000\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\001\000\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\000\000\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\061\215&quot;, &lt;incomplete sequence \345&gt;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\000\000\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\001\000\000&quot;, __align = {&lt;No data fields&gt;}}}}, &lt;No data fields&gt;}
        n = 0x0
        shouldEmit = &lt;optimized out&gt;
        depth = 0
        enterNode = 
          {__this = 0x7fff31dee6a0, __shouldEmit = &lt;synthetic pointer&gt;&lt;error reading variable&gt;, __depth = &lt;synthetic pointer&gt;&lt;error reading variable&gt;}
        lastClosed = 0x7f175c2e8f70
        exitNode = 
          {__depth = &lt;synthetic pointer&gt;&lt;error reading variable&gt;, __shouldEmit =--Type &lt;RET&gt; for more, q to quit, c to continue without paging--c
 &lt;synthetic pointer&gt;&lt;error reading variable&gt;, __this = 0x7fff31dee6a0, __lastClosed = &lt;synthetic pointer&gt;&lt;error reading variable&gt;}
        lastNode = 0x0
        next = 0x0
#1  0x00007f17c7840eb2 in WebCore::StyledMarkupAccumulator::firstChild(WebCore::Node&amp;) (this=0x7fff31dee6a0, node=...) at ../Source/WebCore/editing/markup.cpp:267
        child = &lt;optimized out&gt;
        exitedAncestors = {&lt;WTF::VectorBuffer&lt;WebCore::Node*, 8&gt;&gt; = {&lt;WTF::VectorBufferBase&lt;WebCore::Node*&gt;&gt; = {m_buffer = 0x7fff31dee440, m_capacity = 8, m_size = 0}, m_inlineBuffer = {{__data = &quot;p\217.\\\027\177\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;+˂\307\027\177\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\000\000\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\001\000\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\000\000\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\061\215&quot;, &lt;incomplete sequence \345&gt;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\000\000\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\001\000\000&quot;, __align = {&lt;No data fields&gt;}}}}, &lt;No data fields&gt;}
        n = 0x0
        shouldEmit = &lt;optimized out&gt;
        depth = 0
        enterNode = {__this = 0x7fff31dee6a0, __shouldEmit = &lt;synthetic pointer&gt;&lt;error reading variable&gt;, __depth = &lt;synthetic pointer&gt;&lt;error reading variable&gt;}
        lastClosed = 0x7f175c2e8f70
        exitNode = {__depth = &lt;synthetic pointer&gt;&lt;error reading variable&gt;, __shouldEmit = &lt;synthetic pointer&gt;&lt;error reading variable&gt;, __this = 0x7fff31dee6a0, __lastClosed = &lt;synthetic pointer&gt;&lt;error reading variable&gt;}
        lastNode = 0x0
        next = 0x0
#2  0x00007f17c7840eb2 in WebCore::StyledMarkupAccumulator::traverseNodesForSerialization(WebCore::Node*, WebCore::Node*, WebCore::StyledMarkupAccumulator::NodeTraversalMode) (this=0x7fff31dee6a0, startNode=&lt;optimized out&gt;, pastEnd=0x7f174c74e0e8, traversalMode=&lt;optimized out&gt;) at ../Source/WebCore/editing/markup.cpp:631
        child = &lt;optimized out&gt;
        exitedAncestors = {&lt;WTF::VectorBuffer&lt;WebCore::Node*, 8&gt;&gt; = {&lt;WTF::VectorBufferBase&lt;WebCore::Node*&gt;&gt; = {m_buffer = 0x7fff31dee440, m_capacity = 8, m_size = 0}, m_inlineBuffer = {{__data = &quot;p\217.\\\027\177\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;+˂\307\027\177\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\000\000\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\001\000\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\000\000\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\061\215&quot;, &lt;incomplete sequence \345&gt;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\000\000\000&quot;, __align = {&lt;No data fields&gt;}}, {__data = &quot;\000\000\000\000\001\000\000&quot;, __align = {&lt;No data fields&gt;}}}}, &lt;No data fields&gt;}
        n = 0x0
        shouldEmit = &lt;optimized out&gt;
        depth = 0
        enterNode = {__this = 0x7fff31dee6a0, __shouldEmit = &lt;synthetic pointer&gt;&lt;error reading variable&gt;, __depth = &lt;synthetic pointer&gt;&lt;error reading variable&gt;}
        lastClosed = 0x7f175c2e8f70
        exitNode = {__depth = &lt;synthetic pointer&gt;&lt;error reading variable&gt;, __shouldEmit = &lt;synthetic pointer&gt;&lt;error reading variable&gt;, __this = 0x7fff31dee6a0, __lastClosed = &lt;synthetic pointer&gt;&lt;error reading variable&gt;}
        lastNode = 0x0
        next = 0x0
#3  0x00007f17c7841a25 in WebCore::StyledMarkupAccumulator::serializeNodes(WebCore::Position const&amp;, WebCore::Position const&amp;) (this=this@entry=0x7fff31dee6a0, start=..., end=...) at DerivedSources/ForwardingHeaders/wtf/DumbPtrTraits.h:43
        lastClosed = &lt;optimized out&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1561145</commentid>
    <comment_count>1</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2019-08-14 06:48:46 -0700</bug_when>
    <thetext>Any way/test to reproduce it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1561173</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2019-08-14 09:02:45 -0700</bug_when>
    <thetext>Haha, of course not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1578248</commentid>
    <comment_count>3</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2019-10-09 08:52:07 -0700</bug_when>
    <thetext>

*** This bug has been marked as a duplicate of bug 199224 ***</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>