<html>
    <head>
      <base href="https://bugzilla.gnome.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [Wayland] crash at gdk_flush() called from "draw" signal handler during resize"
   href="https://bugzilla.gnome.org/show_bug.cgi?id=773307">773307</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>[Wayland] crash at gdk_flush() called from "draw" signal handler during resize
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Platform
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>gtk+
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>3.22.x
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>Normal
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Backend: Wayland
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>gtk-bugs@gtk.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>stransky@redhat.com
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>gtk-bugs@gtk.org
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>rob@robster.org.uk, wayland-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>GNOME version</th>
          <td>---
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Created <span class=""><a href="attachment.cgi?id=338172" name="attach_338172" title="testcase - resize the window until crash">attachment 338172</a> <a href="attachment.cgi?id=338172&action=edit" title="testcase - resize the window until crash">[details]</a></span>
testcase - resize the window until crash

That bug comes from Firefox on Wayland. Constantly crashes when it's resized.
There's a minimized testcase. 

Wayland backend calls drop_cairo_surfaces() in configure event. When
gdk_flush() is called in expose event, the configure event is fired and
drop_cairo_surfaces() deletes active wayland surfaces and gdk then crashes when
tries to finish painting after return from expose handler.

bt:
</pre>
<p class="trace_link" title="See Full Trace">
  <a class="trace_toggle_box" href="#"
     title="Expand/Collapse Trace"
     onclick="traceparser_toggle_trace(this, 236756); return false;">+</a>
  <a href="page.cgi?id=traceparser/trace.html&trace_id=236756">Trace
    236756</a></p>

<table border="0" cellpadding="0" cellspacing="0"><tr><td>
<div class="trace  bz_default_hidden"
     id="trace_236756">


      <ul class="frames">
          <li class="frame ">
              <span class="frame_number">#4</span>
            <span class="frame_function">drop_cairo_surfaces</span>
              <div class="frame_file_container">
                at <span class="frame_file">gdkwindow-wayland.c</span>
                  line
                  <span class="frame_line">273</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#5</span>
            <span class="frame_function">gdk_wayland_window_update_size</span>
              <div class="frame_file_container">
                at <span class="frame_file">gdkwindow-wayland.c</span>
                  line
                  <span class="frame_line">333</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#6</span>
            <span class="frame_function">gdk_wayland_window_configure</span>
              <div class="frame_file_container">
                at <span class="frame_file">gdkwindow-wayland.c</span>
                  line
                  <span class="frame_line">1025</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#7</span>
            <span class="frame_function">xdg_surface_configure</span>
              <div class="frame_file_container">
                at <span class="frame_file">gdkwindow-wayland.c</span>
                  line
                  <span class="frame_line">1390</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#8</span>
            <span class="frame_function">ffi_call_unix64</span>
              <div class="frame_file_container">
                at <span class="frame_file">../src/x86/unix64.S</span>
                  line
                  <span class="frame_line">76</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#9</span>
            <span class="frame_function">ffi_call</span>
              <div class="frame_file_container">
                at <span class="frame_file">../src/x86/ffi64.c</span>
                  line
                  <span class="frame_line">525</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#10</span>
            <span class="frame_function">wl_closure_invoke</span>
              <div class="frame_file_container">
                at <span class="frame_file">src/connection.c</span>
                  line
                  <span class="frame_line">935</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#11</span>
            <span class="frame_function">dispatch_event</span>
              <div class="frame_file_container">
                at <span class="frame_file">src/wayland-client.c</span>
                  line
                  <span class="frame_line">1310</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#12</span>
            <span class="frame_function">dispatch_queue</span>
              <div class="frame_file_container">
                at <span class="frame_file">src/wayland-client.c</span>
                  line
                  <span class="frame_line">1456</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#13</span>
            <span class="frame_function">wl_display_dispatch_queue_pending</span>
              <div class="frame_file_container">
                at <span class="frame_file">src/wayland-client.c</span>
                  line
                  <span class="frame_line">1698</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#14</span>
            <span class="frame_function">wl_display_roundtrip_queue</span>
              <div class="frame_file_container">
                at <span class="frame_file">src/wayland-client.c</span>
                  line
                  <span class="frame_line">1121</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#15</span>
            <span class="frame_function">gdk_flush</span>
              <div class="frame_file_container">
                at <span class="frame_file">gdkdisplay.c</span>
                  line
                  <span class="frame_line">598</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#37</span>
            <span class="frame_function">draw_window_of_widget(_GtkWidget*, _GdkWindow*, _cairo*)</span>
              <div class="frame_file_container">
                at <span class="frame_file">/home/komat/tmp676-trunk-gtk3/src3/widget/gtk/nsWindow.cpp</span>
                  line
                  <span class="frame_line">5616</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#38</span>
            <span class="frame_function">expose_event_cb(GtkWidget*, cairo_t*)</span>
              <div class="frame_file_container">
                at <span class="frame_file">/home/komat/tmp676-trunk-gtk3/src3/widget/gtk/nsWindow.cpp</span>
                  line
                  <span class="frame_line">5639</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#39</span>
            <span class="frame_function">_gtk_marshal_BOOLEAN__BOXED</span>
              <div class="frame_file_container">
                at <span class="frame_file">gtkmarshalers.c</span>
                  line
                  <span class="frame_line">86</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#40</span>
            <span class="frame_function">gtk_widget_draw_marshaller</span>
              <div class="frame_file_container">
                at <span class="frame_file">gtkwidget.c</span>
                  line
                  <span class="frame_line">937</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#44</span>
            <span class="frame_function"><emit signal ??? on instance 0x7fffbe789070 [MozContainer]></span>
              <div class="frame_file_container">
                at <span class="frame_file">gsignal.c</span>
                  line
                  <span class="frame_line">3447</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#45</span>
            <span class="frame_function">gtk_widget_draw_internal</span>
              <div class="frame_file_container">
                at <span class="frame_file">gtkwidget.c</span>
                  line
                  <span class="frame_line">7008</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#46</span>
            <span class="frame_function">gtk_container_propagate_draw</span>
              <div class="frame_file_container">
                at <span class="frame_file">gtkcontainer.c</span>
                  line
                  <span class="frame_line">3838</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#47</span>
            <span class="frame_function">gtk_container_draw</span>
              <div class="frame_file_container">
                at <span class="frame_file">gtkcontainer.c</span>
                  line
                  <span class="frame_line">3658</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#48</span>
            <span class="frame_function">gtk_window_draw</span>
              <div class="frame_file_container">
                at <span class="frame_file">gtkwindow.c</span>
                  line
                  <span class="frame_line">10211</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#49</span>
            <span class="frame_function">gtk_widget_draw_internal</span>
              <div class="frame_file_container">
                at <span class="frame_file">gtkwidget.c</span>
                  line
                  <span class="frame_line">7015</span>
              </div>
          </li>
          <li class="frame ">
              <span class="frame_number">#50</span>
            <span class="frame_function">gtk_widget_render</span>
          </li>
      </ul>
</div>
</td></tr></table>
<pre class="bz_comment_text" >
[GtkWindow], window=0x7fffc1579380 [GdkWayland]</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>