Created attachment 81457 [details] GDB output Following the steps on https://bugs.freedesktop.org/show_bug.cgi?id=66167 I found a different issue. Also, it's easier to reproduce if doing these steps: 1. Launch gtk3-demo 2. In the left panel (titled Widget), double-click the "Application window" demo from the list. 3. On the toolbar, click on File and move to the right to show the rest of popup menus (File, Preferences, Help) and to then to the left several times. 4. Observe how Weston receives a SIGSEGV. Apparently, compositor->surface_list is corrupted (see the attached GDB output). A workaround patch is attached to this bug report.
Created attachment 81458 [details] [review] Workaround patch (doesn't fix the source of the corruption) Workaround patch to avoid the issue.
commit 27b1793857953927f842065a57cb5821a86bc671 Author: Rob Bradford <rob@linux.intel.com> Date: Wed Jun 26 18:08:46 2013 +0100 compositor: rebuild the global list if we've removed a surface from it The list of surfaces used by weston_compositor_pick_surface() is maintained in list of surfaces stored on the compositor. This list is generated from the surfaces across all the layers using weston_compositor_build_surface_list. When destroying a surface the surface is "unmapped" with weston_surface_unmap which removes it from the layer list. However since the compositor surface list was only being rebuilt when the output was repainted a call to weston_compositor_pick_surface before the next output repaint would use an outdated surface list containing surfaces that have been partially destroyed. https://bugs.freedesktop.org/show_bug.cgi?id=65986 https://bugs.freedesktop.org/show_bug.cgi?id=66173 https://bugs.freedesktop.org/show_bug.cgi?id=66198
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.