<?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>166420</bug_id>
          
          <creation_ts>2016-12-22 07:31:42 -0800</creation_ts>
          <short_desc>[GTK] Crash in WebCore::CoordinatedGraphicsLayer::notifyFlushRequired</short_desc>
          <delta_ts>2017-03-02 03:43:45 -0800</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>WebKit Nightly Build</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugzilla.redhat.com/show_bug.cgi?id=1408225</see_also>
    
    <see_also>https://bugzilla.gnome.org/show_bug.cgi?id=776391</see_also>
          <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>cgarcia</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>luiz</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>mcrha</cc>
    
    <cc>noam</cc>
    
    <cc>tpopela</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1262288</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2016-12-22 07:31:42 -0800</bug_when>
    <thetext>Downstream reporter says &quot;This issue happens with WebKit rendering mails inside evolution. It is probably related to https://bugzilla.gnome.org/show_bug.cgi?id=776391&quot;. Indeed, I see a bunch of web inspector stuff in the backtrace.


Thread 1 (Thread 0x7f8d612cdfc0 (LWP 2745)):
#0  0x00007f8d6003226b in WebCore::CoordinatedGraphicsLayer::notifyFlushRequired() (this=0x7f8cd859a800) at /usr/src/debug/webkitgtk-2.14.2/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:57
#1  0x00007f8d60032a79 in WebCore::CoordinatedGraphicsLayer::didChangeGeometry() (this=0x7f8cd859a800) at /usr/src/debug/webkitgtk-2.14.2/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:104
#2  0x00007f8d5fa67218 in WebCore::PageOverlayController::installPageOverlay(WTF::PassRefPtr&lt;WebCore::PageOverlay&gt;, WebCore::PageOverlay::FadeMode) (this=0x7f8d499f44b0, pageOverlay=..., fadeMode=fadeMode@entry=WebCore::PageOverlay::FadeMode::Fade) at /usr/src/debug/webkitgtk-2.14.2/Source/WebCore/page/PageOverlayController.cpp:110
        overlay = {static isRefPtr = &lt;optimized out&gt;, m_ptr = 0x7f8d499828a0}
        layer = std::unique_ptr&lt;WebCore::GraphicsLayer&gt; containing 0x7f8cd859a800
#3  0x00007f8d5f1486c2 in WebKit::WebInspectorClient::highlight() (this=0x55b67236a3c0) at /usr/src/debug/webkitgtk-2.14.2/Source/WebKit2/WebProcess/WebCoreSupport/WebInspectorClient.cpp:112
        highlightOverlay = {static isRef = &lt;optimized out&gt;, m_ptr = 0x0}
        this = 0x55b67236a3c0
#4  0x00007f8d5f90d268 in WebCore::InspectorOverlay::update() (this=0x7f8d499ca000) at /usr/src/debug/webkitgtk-2.14.2/Source/WebCore/inspector/InspectorOverlay.cpp:346
        viewportSize = {m_width = 1653, m_height = 320}
        frameViewFullSize = &lt;optimized out&gt;
#5  0x00007f8d5f8cc12d in WebCore::InspectorDOMAgent::highlightNode(WTF::String&amp;, Inspector::InspectorObject const&amp;, int const*, WTF::String const*) (this=0x7f8d499a7000, errorString=..., highlightInspectorObject=..., nodeId=&lt;optimized out&gt;, objectId=&lt;optimized out&gt;) at /usr/src/debug/webkitgtk-2.14.2/Source/WebCore/inspector/InspectorDOMAgent.cpp:1141
        node = 0x7f8d498f4840
        highlightConfig = std::unique_ptr&lt;WebCore::HighlightConfig&gt; containing 0x7f8cd85e3d20
#6  0x00007f8d5e60e0ea in Inspector::DOMBackendDispatcher::highlightNode(long, WTF::RefPtr&lt;Inspector::InspectorObject&gt;&amp;&amp;) (this=0x7f8d499ae8e0, requestId=43, parameters=&lt;optimized out&gt;) at /usr/src/debug/webkitgtk-2.14.2/x86_64-redhat-linux-gnu/DerivedSources/JavaScriptCore/inspector/InspectorBackendDispatchers.cpp:1585
        in_highlightConfig = {static isRefPtr = &lt;optimized out&gt;, m_ptr = 0x7f8cd85ccf80}
        opt_in_nodeId_valueFound = true
        opt_in_nodeId = 2
        opt_in_objectId_valueFound = false
        opt_in_objectId = {m_impl = {static isRefPtr = &lt;optimized out&gt;, m_ptr = 0x7f8d5e86d1d0 &lt;WTF::StringImpl::empty()::emptyString&gt;}}
        error = {m_impl = {static isRefPtr = &lt;optimized out&gt;, m_ptr = 0x0}}
        result = {static isRef = &lt;optimized out&gt;, m_ptr = 0x7f8cd85d04c0}
#7  0x00007f8d5e61b4fb in Inspector::DOMBackendDispatcher::dispatch(long, WTF::String const&amp;, WTF::Ref&lt;Inspector::InspectorObject&gt;&amp;&amp;) (this=0x7f8d499ae8e0, requestId=43, method=..., message=&lt;optimized out&gt;) at /usr/src/debug/webkitgtk-2.14.2/x86_64-redhat-linux-gnu/DerivedSources/JavaScriptCore/inspector/InspectorBackendDispatchers.cpp:936
        parameters = {static isRefPtr = &lt;optimized out&gt;, m_ptr = 0x7f8cd85ccf40}
        dispatchMap = {m_storage = {__data = &quot;\000\344\276\362\214\177\000\000\200\000\000\000\177\000\000\000#\000\000\000\000\000\000&quot;, __align = {&lt;No data fields&gt;}}}
        findResult = &lt;optimized out&gt;
#8  0x00007f8d5e1f2408 in Inspector::BackendDispatcher::dispatch(WTF::String const&amp;) (this=0x7f8d499ef360, message=...) at /usr/src/debug/webkitgtk-2.14.2/Source/JavaScriptCore/inspector/InspectorBackendDispatcher.cpp:181
        methodString = {m_impl = {static isRefPtr = &lt;optimized out&gt;, m_ptr = 0x7f8cd85bdc30}}
        scopedRequestId = {m_scopedVariable = @0x7f8d499ef398, m_originalValue = {m_isEngaged = false, m_value = {__data = &quot;\200l\207I\215\177\000&quot;, __align = {&lt;No data fields&gt;}}}}
        methodValue = {static isRefPtr = &lt;optimized out&gt;, m_ptr = 0x7f8cd85cdd38}
        domainAndMethod = {&lt;WTF::VectorBuffer&lt;WTF::String, 0ul&gt;&gt; = {&lt;WTF::VectorBufferBase&lt;WTF::String&gt;&gt; = {m_buffer = 0x7f8cd85b9d80, m_capacity = 16, m_size = 2}, &lt;No data fields&gt;}, &lt;No data fields&gt;}
        method = {m_impl = {static isRefPtr = &lt;optimized out&gt;, m_ptr = 0x7f8cd85bdc80}}
        protect = {static isRef = &lt;optimized out&gt;, m_ptr = 0x7f8d499ef360}
        requestId = 43
        messageObject = {static isRefPtr = &lt;optimized out&gt;, m_ptr = 0x0}
#9  0x00007f8d5f2a9304 in IPC::callMemberFunctionImpl&lt;WebKit::WebInspector, void (WebKit::WebInspector::*)(WTF::String const&amp;), std::tuple&lt;WTF::String&gt;, 0ul&gt;(WebKit::WebInspector*, void (WebKit::WebInspector::*)(WTF::String const&amp;), std::tuple&lt;WTF::String&gt;&amp;&amp;, std::integer_sequence&lt;unsigned long, 0ul&gt;) (args=&lt;optimized out&gt;, function=&lt;optimized out&gt;, object=0x7f8d498ef188) at /usr/src/debug/webkitgtk-2.14.2/Source/WebKit2/Platform/IPC/HandleMessage.h:13
        arguments = std::tuple containing = {[1] = {m_impl = {static isRefPtr = &lt;optimized out&gt;, m_ptr = 0x7f8d49876c80}}}
#10 0x00007f8d5f2a9304 in IPC::callMemberFunction&lt;WebKit::WebInspector, void (WebKit::WebInspector::*)(WTF::String const&amp;), std::tuple&lt;WTF::String&gt;, std::integer_sequence&lt;unsigned long, 0ul&gt; &gt;(std::tuple&lt;WTF::String&gt;&amp;&amp;, WebKit::WebInspector*, void (WebKit::WebInspector::*)(WTF::String const&amp;)) (function=&lt;optimized out&gt;, object=0x7f8d498ef188, args=&lt;unknown type in /usr/lib/debug/usr/lib64/libwebkit2gtk-4.0.so.37.14.9.debug, CU 0xf44375b, DIE 0xf464bcf&gt;) at /usr/src/debug/webkitgtk-2.14.2/Source/WebKit2/Platform/IPC/HandleMessage.h:19
        arguments = std::tuple containing = {[1] = {m_impl = {static isRefPtr = &lt;optimized out&gt;, m_ptr = 0x7f8d49876c80}}}
#11 0x00007f8d5f2a9304 in IPC::handleMessage&lt;Messages::WebInspector::SendMessageToBackend, WebKit::WebInspector, void (WebKit::WebInspector::*)(WTF::String const&amp;)&gt;(IPC::Decoder&amp;, WebKit::WebInspector*, void (WebKit::WebInspector::*)(WTF::String const&amp;)) (decoder=..., object=object@entry=0x7f8d498ef188, function=(void (WebKit::WebInspector::*)(WebKit::WebInspector * const, const WTF::String &amp;)) 0x7f8d5f158530 &lt;WebKit::WebInspector::sendMessageToBackend(WTF::String const&amp;)&gt;) at /usr/src/debug/webkitgtk-2.14.2/Source/WebKit2/Platform/IPC/HandleMessage.h:99
        arguments = std::tuple containing = {[1] = {m_impl = {static isRefPtr = &lt;optimized out&gt;, m_ptr = 0x7f8d49876c80}}}
#12 0x00007f8d5f2a9248 in WebKit::WebInspector::didReceiveMessage(IPC::Connection&amp;, IPC::Decoder&amp;) (this=0x7f8d498ef188, connection=..., decoder=...) at /usr/src/debug/webkitgtk-2.14.2/x86_64-redhat-linux-gnu/DerivedSources/WebKit2/WebInspectorMessageReceiver.cpp:88
#13 0x00007f8d5ef952b6 in IPC::Connection::dispatchMessage(std::unique_ptr&lt;IPC::Decoder, std::default_delete&lt;IPC::Decoder&gt; &gt;) (this=this@entry=0x7f8d499e85a0, message=std::unique_ptr&lt;IPC::Decoder&gt; containing 0x7f8d49891948) at /usr/src/debug/webkitgtk-2.14.2/Source/WebKit2/Platform/IPC/Connection.cpp:858
        oldDidReceiveInvalidMessage = false
#14 0x00007f8d5ef95f48 in IPC::Connection::dispatchOneMessage() (this=0x7f8d499e85a0) at /usr/src/debug/webkitgtk-2.14.2/Source/WebKit2/Platform/IPC/Connection.cpp:889
#15 0x00007f8d5e656825 in WTF::Function&lt;void ()&gt;::operator()() const (this=&lt;synthetic pointer&gt;) at /usr/src/debug/webkitgtk-2.14.2/Source/WTF/wtf/Function.h:50
        function = {m_callableWrapper = std::unique_ptr&lt;WTF::Function&lt;void()&gt;::CallableWrapperBase&gt; containing 0x7f8d498b1ea0}
        functionsToHandle = &lt;optimized out&gt;
#16 0x00007f8d5e656825 in WTF::RunLoop::performWork() (this=0x7f8d499f7000) at /usr/src/debug/webkitgtk-2.14.2/Source/WTF/wtf/RunLoop.cpp:105
        function = {m_callableWrapper = std::unique_ptr&lt;WTF::Function&lt;void()&gt;::CallableWrapperBase&gt; containing 0x7f8d498b1ea0}
        functionsToHandle = &lt;optimized out&gt;
#17 0x00007f8d5e67d2b9 in WTF::RunLoop::&lt;lambda(gpointer)&gt;::operator() (__closure=0x0, userData=&lt;optimized out&gt;) at /usr/src/debug/webkitgtk-2.14.2/Source/WTF/wtf/glib/RunLoopGLib.cpp:66
#18 0x00007f8d5e67d2b9 in WTF::RunLoop::&lt;lambda(gpointer)&gt;::_FUN(gpointer) () at /usr/src/debug/webkitgtk-2.14.2/Source/WTF/wtf/glib/RunLoopGLib.cpp:68
#19 0x00007f8d57d1ae42 in g_main_dispatch (context=0x55b67226ea10) at gmain.c:3203
        dispatch = 0x7f8d5e67d2d0 &lt;WTF::&lt;lambda(GSource*, GSourceFunc, gpointer)&gt;::_FUN(GSource *, GSourceFunc, gpointer)&gt;
        prev_source = 0x0
        was_in_call = 0
        user_data = 0x7f8d499f7000
        callback = 0x7f8d5e67d2b0 &lt;WTF::RunLoop::&lt;lambda(gpointer)&gt;::_FUN(gpointer)&gt;
        cb_funcs = 0x7f8d57fe2280 &lt;g_source_callback_funcs&gt;
        cb_data = 0x55b6722e46c0
        need_destroy = &lt;optimized out&gt;
        source = 0x55b6722e5000
        current = 0x55b6722a8a90
        i = 0
#20 0x00007f8d57d1ae42 in g_main_context_dispatch (context=context@entry=0x55b67226ea10) at gmain.c:3856
#21 0x00007f8d57d1b1c0 in g_main_context_iterate (context=0x55b67226ea10, block=block@entry=1, dispatch=dispatch@entry=1, self=&lt;optimized out&gt;) at gmain.c:3929
        max_priority = 2147483647
        timeout = 6
        some_ready = 1
        nfds = 4
        allocated_nfds = 4
        fds = &lt;optimized out&gt;
#22 0x00007f8d57d1b4e2 in g_main_loop_run (loop=0x55b6722e4fe0) at gmain.c:4125
        __func__ = &quot;g_main_loop_run&quot;
#23 0x00007f8d5e67db70 in WTF::RunLoop::run() () at /usr/src/debug/webkitgtk-2.14.2/Source/WTF/wtf/glib/RunLoopGLib.cpp:94
        runLoop = @0x7f8d499f7000: {&lt;WTF::FunctionDispatcher&gt; = {&lt;WTF::ThreadSafeRefCounted&lt;WTF::FunctionDispatcher&gt;&gt; = {&lt;WTF::ThreadSafeRefCountedBase&gt; = {m_refCount = {&lt;std::__atomic_base&lt;int&gt;&gt; = {static _S_alignment = 4, _M_i = 1}, &lt;No data fields&gt;}}, &lt;No data fields&gt;}, _vptr.FunctionDispatcher = 0x7f8d5e83cba0 &lt;vtable for WTF::RunLoop+16&gt;}, m_functionQueueLock = {m_mutex = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 512, __spins = 0, __elision = 0, __list = {__prev = 0x0, __next = 0x0}}, __size = &apos;\000&apos; &lt;repeats 17 times&gt;, &quot;\002&quot;, &apos;\000&apos; &lt;repeats 21 times&gt;, __align = 0}}, m_functionQueue = {m_start = 8, m_end = 8, m_buffer = {&lt;WTF::VectorBufferBase&lt;WTF::Function&lt;void()&gt; &gt;&gt; = {m_buffer = 0x7f8d499da0a8, m_capacity = 21, m_size = 0}, &lt;No data fields&gt;}}, m_mainContext = {m_ptr = 0x55b67226ea10}, m_mainLoops = {&lt;WTF::VectorBuffer&lt;WTF::GRefPtr&lt;_GMainLoop&gt;, 0ul&gt;&gt; = {&lt;WTF::VectorBufferBase&lt;WTF::GRefPtr&lt;_GMainLoop&gt; &gt;&gt; = {m_buffer = 0x7f8d499fa180, m_capacity = 16, m_size = 1}, &lt;No data fields&gt;}, &lt;No data fields&gt;}, m_source = {m_ptr = 0x55b6722e5000}}
        nestedMainLoop = &lt;optimized out&gt;
#24 0x00007f8d5f2508a9 in WebKit::ChildProcessMain&lt;WebKit::WebProcess, WebKit::WebProcessMain&gt;(int, char**) (argc=&lt;optimized out&gt;, argv=0x7ffc09a82f98) at /usr/src/debug/webkitgtk-2.14.2/Source/WebKit2/Shared/unix/ChildProcessMain.h:61
        childMain = {&lt;WebKit::ChildProcessMainBase&gt; = {_vptr.ChildProcessMainBase = 0x7f8d60fddbe0 &lt;vtable for WebKit::WebProcessMain+16&gt;, m_parameters = {uiProcessName = {m_impl = {static isRefPtr = &lt;optimized out&gt;, m_ptr = 0x0}}, clientIdentifier = {m_impl = {static isRefPtr = &lt;optimized out&gt;, m_ptr = 0x0}}, connectionIdentifier = 57, extraInitializationData = {m_impl = {static m_maxLoad = &lt;optimized out&gt;, static m_minLoad = &lt;optimized out&gt;, m_table = 0x0, m_tableSize = 0, m_tableSizeMask = 0, m_keyCount = 0, m_deletedCount = 0}}}}, &lt;No data fields&gt;}
#25 0x00007f8d52e71401 in __libc_start_main (main=0x55b670ebfc00 &lt;main(int, char**)&gt;, argc=2, argv=0x7ffc09a82f98, init=&lt;optimized out&gt;, fini=&lt;optimized out&gt;, rtld_fini=&lt;optimized out&gt;, stack_end=0x7ffc09a82f88) at ../csu/libc-start.c:289
        result = &lt;optimized out&gt;
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {0, 5904416883543918654, 94242066922544, 140720470503312, 0, 0, 388507317331839038, 398278049944455230}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x7ffc09a82fb0, 0x7f8d613b8128}, data = {prev = 0x0, cleanup = 0x0, canceltype = 162017200}}}
        not_first_call = &lt;optimized out&gt;
#26 0x000055b670ebfc5a in _start ()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1262937</commentid>
    <comment_count>1</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2016-12-28 08:52:08 -0800</bug_when>
    <thetext>Most likely m_coordinator is null. It&apos;s not expected to be null since there&apos;s an assert at the top of notifyFlushRequired() that checks that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1262957</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2016-12-28 11:21:10 -0800</bug_when>
    <thetext>(In reply to comment #1)
&gt; Most likely m_coordinator is null. It&apos;s not expected to be null since
&gt; there&apos;s an assert at the top of notifyFlushRequired() that checks that.

I&apos;m pretty sure I&apos;ve hit that assert many times before.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263318</commentid>
    <comment_count>3</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-01-02 09:55:56 -0800</bug_when>
    <thetext>Milan says this is 100% reproducible when opening the web inspector in Evolution when running in X11. Doesn&apos;t happen in Wayland nor in Epiphany.

Note: we only have five reports of this total in Fedora. But that&apos;s not unexpected if it requires opening the web inspector. Maybe the downstream reporter, who didn&apos;t mention inspector at all, accidentally triggered the inspector keybinding and didn&apos;t realize it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263328</commentid>
    <comment_count>4</comment_count>
    <who name="Milan Crha">mcrha</who>
    <bug_when>2017-01-02 11:04:21 -0800</bug_when>
    <thetext>Right, for me, when not running under Wayland, it&apos;s enough to show the inspector and move a mouse pointer above its area (even its top buttons), but only from within the Evolution for some reason.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263413</commentid>
    <comment_count>5</comment_count>
      <attachid>297927</attachid>
    <who name="Milan Crha">mcrha</who>
    <bug_when>2017-01-03 01:03:34 -0800</bug_when>
    <thetext>Created attachment 297927
test-wk2.c

This is a test program to reproduce the crash. As Tom told me, the trick is to use WEBKIT_DISABLE_COMPOSITING_MODE=1, which evolution does by default now, then the application crashes when moving the mouse cursor for example above the HTML nodes of the inspector.

The first line of the file contains a command line to compile &amp; run it. Then click the Show Inspector button at the top and finally hover the mouse above the area of the docked inspector.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263416</commentid>
    <comment_count>6</comment_count>
    <who name="Tomas Popela">tpopela</who>
    <bug_when>2017-01-03 01:19:03 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; Created attachment 297927 [details]
&gt; test-wk2.c
&gt; 
&gt; This is a test program to reproduce the crash. As Tom told me, the trick is
&gt; to use WEBKIT_DISABLE_COMPOSITING_MODE=1, which evolution does by default
&gt; now, then the application crashes when moving the mouse cursor for example
&gt; above the HTML nodes of the inspector.

As Carlos told me the web inspector requires the AC to be enabled. So basically it is &quot;expected&quot; that it will misbehave (crash) when it is disabled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263418</commentid>
    <comment_count>7</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-01-03 01:53:11 -0800</bug_when>
    <thetext>I don&apos;t think it should crash, maybe things like page overlay wont&apos; work, but it shouldn&apos;t crash.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263438</commentid>
    <comment_count>8</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-01-03 05:25:12 -0800</bug_when>
    <thetext>Running Epiphany with WEBKIT_DISABLE_COMPOSITING_MODE=1, the inspector appears to work until I click the inspect button (which I guess creates the page overlay). When clicking the Inspect button, the web process immediately crashes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263439</commentid>
    <comment_count>9</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-01-03 05:26:28 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; Running Epiphany with WEBKIT_DISABLE_COMPOSITING_MODE=1, the inspector
&gt; appears to work

With the caveat that it is not possible to close, resize, or dock/undock, it just stays open forever.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1271767</commentid>
    <comment_count>10</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-01-31 10:06:26 -0800</bug_when>
    <thetext>I think this should be fixed now by r211083. Feel free to reopen if I&apos;m wrong.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1282678</commentid>
    <comment_count>11</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-03-02 03:14:40 -0800</bug_when>
    <thetext>It&apos;s still possible to crash in CoordinatedGraphicsLayer::notifyFlushRequired(), I&apos;m getting this when closing a page that is being inspected.

#0  0x00007f6e3cc7d20b in WebCore::CoordinatedGraphicsLayer::notifyFlushRequired() ()
   from /home/cgarcia/src/git/gnome/WebKit-remote-inspector/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#1  0x00007f6e3cc812f5 in WebCore::CoordinatedGraphicsLayer::removeFromParent() () from /home/cgarcia/src/git/gnome/WebKit-remote-inspector/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#2  0x00007f6e3baef810 in WebKit::WebInspectorClient::~WebInspectorClient() () from /home/cgarcia/src/git/gnome/WebKit-remote-inspector/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#3  0x00007f6e3baef8e7 in WebKit::WebInspectorClient::inspectedPageDestroyed() () from /home/cgarcia/src/git/gnome/WebKit-remote-inspector/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#4  0x00007f6e3c3df5b2 in WebCore::InspectorController::inspectedPageDestroyed() () from /home/cgarcia/src/git/gnome/WebKit-remote-inspector/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#5  0x00007f6e3c5c8859 in WebCore::Page::~Page() () from /home/cgarcia/src/git/gnome/WebKit-remote-inspector/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#6  0x00007f6e3bb13dd0 in WebKit::WebPage::close() () from /home/cgarcia/src/git/gnome/WebKit-remote-inspector/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#7  0x00007f6e3bd2fd81 in WebKit::WebPage::didReceiveWebPageMessage(IPC::Connection&amp;, IPC::Decoder&amp;) ()
   from /home/cgarcia/src/git/gnome/WebKit-remote-inspector/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#8  0x00007f6e3b92b3f9 in IPC::MessageReceiverMap::dispatchMessage(IPC::Connection&amp;, IPC::Decoder&amp;) ()
   from /home/cgarcia/src/git/gnome/WebKit-remote-inspector/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#9  0x00007f6e3ba68d06 in WebKit::WebProcess::didReceiveMessage(IPC::Connection&amp;, IPC::Decoder&amp;) ()
   from /home/cgarcia/src/git/gnome/WebKit-remote-inspector/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#10 0x00007f6e3b926edb in IPC::Connection::dispatchMessage(std::unique_ptr&lt;IPC::Decoder, std::default_delete&lt;IPC::Decoder&gt; &gt;) ()
   from /home/cgarcia/src/git/gnome/WebKit-remote-inspector/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#11 0x00007f6e3b927e08 in IPC::Connection::dispatchOneMessage() () from /home/cgarcia/src/git/gnome/WebKit-remote-inspector/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#12 0x00007f6e38868e95 in WTF::RunLoop::performWork() () from /home/cgarcia/src/git/gnome/WebKit-remote-inspector/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18
#13 0x00007f6e3889e189 in WTF::RunLoop::RunLoop()::{lambda(void*)#1}::_FUN(void*) ()
   from /home/cgarcia/src/git/gnome/WebKit-remote-inspector/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18
#14 0x00007f6e3190613a in g_main_dispatch (context=0x55ca754c5470) at gmain.c:3203
#15 g_main_context_dispatch (context=context@entry=0x55ca754c5470) at gmain.c:3856
#16 0x00007f6e319064b8 in g_main_context_iterate (context=0x55ca754c5470, block=block@entry=1, dispatch=dispatch@entry=1, self=&lt;optimized out&gt;) at gmain.c:3929
#17 0x00007f6e319067d2 in g_main_loop_run (loop=0x55ca755eca80) at gmain.c:4125
#18 0x00007f6e3889ea20 in WTF::RunLoop::run() () from /home/cgarcia/src/git/gnome/WebKit-remote-inspector/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18
#19 0x00007f6e3bce1092 in int WebKit::ChildProcessMain&lt;WebKit::WebProcess, WebKit::WebProcessMain&gt;(int, char**) ()
   from /home/cgarcia/src/git/gnome/WebKit-remote-inspector/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#20 0x00007f6e2e4782b1 in __libc_start_main (main=0x55ca734eac30 &lt;main&gt;, argc=2, argv=0x7ffc7503da48, init=&lt;optimized out&gt;, fini=&lt;optimized out&gt;, rtld_fini=&lt;optimized out&gt;, 
    stack_end=0x7ffc7503da38) at ../csu/libc-start.c:291
#21 0x000055ca734eac8a in _start ()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1282679</commentid>
    <comment_count>12</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-03-02 03:16:16 -0800</bug_when>
    <thetext>When CoordinatedGraphicsLayer::removefromParent is called, the coordinator has already been invalidated, so all its layers were set a nullptr coordinator. I think it&apos;s safe to simply handle m_coordinator being nullptr there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1282680</commentid>
    <comment_count>13</comment_count>
      <attachid>303187</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-03-02 03:20:02 -0800</bug_when>
    <thetext>Created attachment 303187
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1282681</commentid>
    <comment_count>14</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-03-02 03:43:45 -0800</bug_when>
    <thetext>Committed r213276: &lt;http://trac.webkit.org/changeset/213276&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>297927</attachid>
            <date>2017-01-03 01:03:34 -0800</date>
            <delta_ts>2017-01-03 01:03:34 -0800</delta_ts>
            <desc>test-wk2.c</desc>
            <filename>test-wk2.c</filename>
            <type>text/plain</type>
            <size>3982</size>
            <attacher name="Milan Crha">mcrha</attacher>
            
              <data encoding="base64">LyogZ2NjIGBwa2ctY29uZmlnIC0tY2ZsYWdzIC0tbGlicyBndGsrLTMuMCB3ZWJraXQyZ3RrLTQu
MGAgdGVzdC13azIuYyAtZyAtTzAgLW8gdGVzdC13azIgJiYgLi90ZXN0LXdrMiAqLwoKI2luY2x1
ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPHN0cmluZy5oPgojaW5j
bHVkZSA8Z3RrL2d0ay5oPgojaW5jbHVkZSA8d2Via2l0Mi93ZWJraXQyLmg+CgpzdGF0aWMgR1Rp
bWVyICp0aW1lciA9IE5VTEw7CgpzdGF0aWMgdm9pZApyZWFkeV90b19zaG93X2NiIChXZWJLaXRX
ZWJWaWV3ICp3ZWJfdmlldywKCQkgIGdwb2ludGVyIHVzZXJfZGF0YSkKewoJcHJpbnRmICgiJXM6
IGFmdGVyICVnc1xuIiwgX19GVU5DVElPTl9fLCBnX3RpbWVyX2VsYXBzZWQgKHRpbWVyLCBOVUxM
KSk7Cn0KCnN0YXRpYyB2b2lkCmxvYWRfY2hhbmdlZF9jYiAoV2ViS2l0V2ViVmlldyAqd2ViX3Zp
ZXcsCgkJIFdlYktpdExvYWRFdmVudCBsb2FkX2V2ZW50LAoJCSBncG9pbnRlciB1c2VyX2RhdGEp
CnsKCXByaW50ZiAoIiVzOiAlcyBhZnRlciAlZ3NcbiIsIF9fRlVOQ1RJT05fXywKCQlsb2FkX2V2
ZW50ID09IFdFQktJVF9MT0FEX1NUQVJURUQgPyAiV0VCS0lUX0xPQURfU1RBUlRFRCIgOgoJCWxv
YWRfZXZlbnQgPT0gV0VCS0lUX0xPQURfUkVESVJFQ1RFRCA/ICJXRUJLSVRfTE9BRF9SRURJUkVD
VEVEIiA6CgkJbG9hZF9ldmVudCA9PSBXRUJLSVRfTE9BRF9DT01NSVRURUQgPyAiV0VCS0lUX0xP
QURfQ09NTUlUVEVEIiA6CgkJbG9hZF9ldmVudCA9PSBXRUJLSVRfTE9BRF9GSU5JU0hFRCA/ICJX
RUJLSVRfTE9BRF9GSU5JU0hFRCIgOiAiPz8/IiwKCQlnX3RpbWVyX2VsYXBzZWQgKHRpbWVyLCBO
VUxMKSk7Cn0KCnN0YXRpYyB2b2lkCnByaW50X3ByZXZpZXdfY2IgKEd0a1dpZGdldCAqYnV0dG9u
LAoJCSAgV2ViS2l0V2ViVmlldyAqd2ViX3ZpZXcpCnsKCS8qV2ViS2l0UHJpbnRPcGVyYXRpb24g
KnBybjsKCglwcm4gPSB3ZWJraXRfcHJpbnRfb3BlcmF0aW9uX25ldyAod2ViX3ZpZXcpOwoJd2Vi
a2l0X3ByaW50X29wZXJhdGlvbl9ydW5fZGlhbG9nIChwcm4sIE5VTEwpOwoJZ19vYmplY3RfdW5y
ZWYgKHBybik7Ki8KCXdlYmtpdF93ZWJfaW5zcGVjdG9yX3Nob3cgKHdlYmtpdF93ZWJfdmlld19n
ZXRfaW5zcGVjdG9yICh3ZWJfdmlldykpOwp9CgpzdGF0aWMgY29uc3QgZ2NoYXIgKmh0bWxfY29u
dGVudDIgPQoJIjxodG1sPjxoZWFkPjwvaGVhZD48Ym9keT5cbiIKCSI8cHJlPmxvbmcgbGluZSBo
ZXJlOlxuIgoJIjFcbiIKCSIyXG4iCgkiM1xuIgoJIjRcbiIKCSI1XG4iCgkiNlxuIgoJIjdcbiIK
CSI4XG4iCgkiOVxuIgoJImFcbiIKCSJiXG4iCgkiY1xuIgoJImRcbiIKCSJlXG4iCgkiZlxuIgoJ
ImdcbiIKCSJoXG4iCgkiaVxuIgoJIj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PSIKCSI9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0iCgkiPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09XG4iCgkialxuIgoJImtcbiIKCSJsXG4iCgkibVxuIgoJ
Im5cbiIKCSJvXG4iCgkicFxuIgoJInFcbiIKCSJyXG4iCgkic1xuIgoJInRcbiIKCSJ1XG4iCgki
dlxuIgoJIndcbiIKCSJ4XG4iCgkieVxuIgoJInpcbiIKCSJFT0Y8L3ByZT48L2JvZHk+PC9odG1s
PlxuIjsKc3RhdGljIGNvbnN0IGdjaGFyICpodG1sX2NvbnRlbnQgPQoJIjxodG1sPjxoZWFkPjwv
aGVhZD48Ym9keT5cbiIKCSI8aWZyYW1lIHNyYz1cImZpbGU6Ly8vdG1wL2EuaHRtbFwiPjwvYm9k
eT48L2h0bWw+IjsKCmludCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQp7CglHdGtXaWRn
ZXQgKmRpYWxvZywgKmNvbnRhaW5lciwgKndrLCAqYnRuOwoJV2ViS2l0U2V0dGluZ3MgKnNldHRp
bmdzOwoKCWd0a19pbml0ICgmYXJnYywgJmFyZ3YpOwoKCWdfc2V0ZW52ICgiV0VCS0lUX0RJU0FC
TEVfQ09NUE9TSVRJTkdfTU9ERSIsICIxIiwgRkFMU0UpOwoKCWRpYWxvZyA9IGd0a19kaWFsb2df
bmV3X3dpdGhfYnV0dG9ucyAoInRlc3Qtd2syIiwgTlVMTCwgMCwgIl9DYW5jZWwiLCBHVEtfUkVT
UE9OU0VfQ0FOQ0VMLCBOVUxMKTsKCWd0a193aW5kb3dfc2V0X2RlZmF1bHRfc2l6ZSAoR1RLX1dJ
TkRPVyAoZGlhbG9nKSwgNjQwLCA0ODApOwoKCWNvbnRhaW5lciA9IGd0a19kaWFsb2dfZ2V0X2Nv
bnRlbnRfYXJlYSAoR1RLX0RJQUxPRyAoZGlhbG9nKSk7CgoJYnRuID0gZ3RrX2J1dHRvbl9uZXdf
d2l0aF9tbmVtb25pYyAoIl9TaG93IEluc3BlY3RvciIpOwoJZ3RrX2NvbnRhaW5lcl9hZGQgKEdU
S19DT05UQUlORVIgKGNvbnRhaW5lciksIGJ0bik7CgoJd2sgPSB3ZWJraXRfd2ViX3ZpZXdfbmV3
X3dpdGhfc2V0dGluZ3MgKHdlYmtpdF9zZXR0aW5nc19uZXdfd2l0aF9zZXR0aW5ncyAoCgkJImF1
dG8tbG9hZC1pbWFnZXMiLCBUUlVFLAoJCSJkZWZhdWx0LWNoYXJzZXQiLCAidXRmLTgiLAoJCSJl
bmFibGUtaHRtbDUtZGF0YWJhc2UiLCBGQUxTRSwKCQkiZW5hYmxlLWRucy1wcmVmZXRjaGluZyIs
IEZBTFNFLAoJCSJlbmFibGUtaHRtbDUtbG9jYWwtc3RvcmFnZSIsIEZBTFNFLAoJCSJlbmFibGUt
amF2YSIsIEZBTFNFLAoJCSJlbmFibGUtamF2YXNjcmlwdCIsIEZBTFNFLAoJCSJlbmFibGUtb2Zm
bGluZS13ZWItYXBwbGljYXRpb24tY2FjaGUiLCBGQUxTRSwKCQkiZW5hYmxlLXBhZ2UtY2FjaGUi
LCBGQUxTRSwKCQkiZW5hYmxlLXBsdWdpbnMiLCBGQUxTRSwKCQkiZW5hYmxlLXNtb290aC1zY3Jv
bGxpbmciLCBGQUxTRSwKCQkibWVkaWEtcGxheWJhY2stYWxsb3dzLWlubGluZSIsIEZBTFNFLAoJ
CU5VTEwpKTsKCgl3ZWJraXRfc2V0dGluZ3Nfc2V0X2VuYWJsZV9kZXZlbG9wZXJfZXh0cmFzICh3
ZWJraXRfd2ViX3ZpZXdfZ2V0X3NldHRpbmdzIChXRUJLSVRfV0VCX1ZJRVcgKHdrKSksIFRSVUUp
OwoKCWdfc2lnbmFsX2Nvbm5lY3QgKGJ0biwgImNsaWNrZWQiLCBHX0NBTExCQUNLIChwcmludF9w
cmV2aWV3X2NiKSwgd2spOwoKCXNldHRpbmdzID0gd2Via2l0X3dlYl92aWV3X2dldF9zZXR0aW5n
cyAoV0VCS0lUX1dFQl9WSUVXICh3aykpOwoKCXdlYmtpdF9zZXR0aW5nc19zZXRfZW5hYmxlX2Zy
YW1lX2ZsYXR0ZW5pbmcgKHNldHRpbmdzLCBUUlVFKTsKCglndGtfY29udGFpbmVyX2FkZCAoR1RL
X0NPTlRBSU5FUiAoY29udGFpbmVyKSwgd2spOwoJZ19vYmplY3Rfc2V0IChHX09CSkVDVCAod2sp
LAoJCSJoZXhwYW5kIiwgVFJVRSwKCQkiaGFsaWduIiwgR1RLX0FMSUdOX0ZJTEwsCgkJInZleHBh
bmQiLCBUUlVFLAoJCSJ2YWxpZ24iLCBHVEtfQUxJR05fRklMTCwKCQkiaGVpZ2h0LXJlcXVlc3Qi
LCA5MCwKCQkid2lkdGgtcmVxdWVzdCIsIDkwLAoJCU5VTEwpOwoKCXRpbWVyID0gZ190aW1lcl9u
ZXcgKCk7CglnX3NpZ25hbF9jb25uZWN0ICh3aywgInJlYWR5LXRvLXNob3ciLCBHX0NBTExCQUNL
IChyZWFkeV90b19zaG93X2NiKSwgTlVMTCk7CglnX3NpZ25hbF9jb25uZWN0ICh3aywgImxvYWQt
Y2hhbmdlZCIsIEdfQ0FMTEJBQ0sgKGxvYWRfY2hhbmdlZF9jYiksIE5VTEwpOwoJd2Via2l0X3dl
Yl92aWV3X2xvYWRfaHRtbCAoV0VCS0lUX1dFQl9WSUVXICh3ayksIGh0bWxfY29udGVudCwgImZp
bGU6Ly8iKTsKCglndGtfd2lkZ2V0X3Nob3dfYWxsIChndGtfZGlhbG9nX2dldF9jb250ZW50X2Fy
ZWEgKEdUS19ESUFMT0cgKGRpYWxvZykpKTsKCS8vZ3RrX3dpZGdldF9oaWRlIChidG4pOwoJZ3Rr
X2RpYWxvZ19ydW4gKEdUS19ESUFMT0cgKGRpYWxvZykpOwoKCWd0a193aWRnZXRfZGVzdHJveSAo
ZGlhbG9nKTsKCWdfdGltZXJfZGVzdHJveSAodGltZXIpOwoKCXJldHVybiAwOwp9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>303187</attachid>
            <date>2017-03-02 03:20:02 -0800</date>
            <delta_ts>2017-03-02 03:27:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>wk-notify-flush-crash.diff</filename>
            <type>text/plain</type>
            <size>1749</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAwZTBjNGVmZTYzNS4uMWE1MDBhYjIwNWQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNyBAQAorMjAxNy0wMy0wMiAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGln
YWxpYS5jb20+CisKKyAgICAgICAgW0dUS10gQ3Jhc2ggaW4gV2ViQ29yZTo6Q29vcmRpbmF0ZWRH
cmFwaGljc0xheWVyOjpub3RpZnlGbHVzaFJlcXVpcmVkCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjY0MjAKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGhhcHBlbmluZyB3aGVuIGNsb3Npbmcg
YSBwYWdlIHRoYXQgaXMgYmVpbmcgaW5zcGVjdGVkLiBXaGVuIENvb3JkaW5hdGVkR3JhcGhpY3NM
YXllcjo6cmVtb3ZlRnJvbVBhcmVudCgpCisgICAgICAgIGlzIGNhbGxlZCwgdGhlIGNvb3JkaW5h
dG9yIGhhcyBhbHJlYWR5IGJlZW4gaW52YWxpZGF0ZWQsIHNvIGFsbCBpdHMgbGF5ZXJzIHdlcmUg
c2V0IGEgbnVsbHB0ciBjb29yZGluYXRvci4gSQorICAgICAgICB0aGluayBpdCdzIHNhZmUgdG8g
c2ltcGx5IGhhbmRsZSBtX2Nvb3JkaW5hdG9yIGJlaW5nIG51bGxwdHIgaW4gbm90aWZ5Rmx1c2hS
ZXF1aXJlZCgpLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5h
dGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NMYXllci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb29y
ZGluYXRlZEdyYXBoaWNzTGF5ZXI6Om5vdGlmeUZsdXNoUmVxdWlyZWQpOiBSZXR1cm4gZWFybHkg
aWYgdGhlIGNvb3JkaW5hdG9yIGlzIG51bGxwdHIuCisKIDIwMTctMDMtMDIgIEFuZHJlYXMgS2xp
bmcgIDxha2xpbmdAYXBwbGUuY29tPgogCiAgICAgICAgIERvbid0IGtlZXAgZGVhZCByZXNvdXJj
ZXMgaW4gTWVtb3J5Q2FjaGUgd2hpbGUgdW5kZXIgbWVtb3J5IHByZXNzdXJlLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nv
b3JkaW5hdGVkR3JhcGhpY3NMYXllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyLmNwcAppbmRl
eCAyNTVlN2JiNTFlZi4uNWNjMGJlMzVjM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzTGF5
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29y
ZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzTGF5ZXIuY3BwCkBAIC01Myw3ICs1Myw5IEBAIHN0
YXRpYyBDb29yZGluYXRlZExheWVySUQgdG9Db29yZGluYXRlZExheWVySUQoR3JhcGhpY3NMYXll
ciogbGF5ZXIpCiAKIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyOjpub3RpZnlGbHVzaFJl
cXVpcmVkKCkKIHsKLSAgICBBU1NFUlQobV9jb29yZGluYXRvcik7CisgICAgaWYgKCFtX2Nvb3Jk
aW5hdG9yKQorICAgICAgICByZXR1cm47CisKICAgICBpZiAobV9jb29yZGluYXRvci0+aXNGbHVz
aGluZ0xheWVyQ2hhbmdlcygpKQogICAgICAgICByZXR1cm47CiAK
</data>
<flag name="review"
          id="324861"
          type_id="1"
          status="+"
          setter="zan"
    />
          </attachment>
      

    </bug>

</bugzilla>