Find a file
Pekka Paalanen cb108439d2 shell: deal with weston_compositor_pick_surface() = NULL
I could crash Weston by trying to open another menu from a panel while
one menu from it was already showing.

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff40a9872 in popup_grab_focus (grab=0x761968, time=4130706528, surface=0x0, x=-227, y=15) at shell.c:440
440		if (surface->resource.client == client) {
(gdb) bt
 0  0x00007ffff40a9872 in popup_grab_focus (grab=0x761968, time=4130706528, surface=0x0, x=-227, y=15) at shell.c:440
 1  0x0000000000406977 in weston_device_repick (device=0x70b4e0, time=4130706528) at compositor.c:360
 2  0x0000000000406a36 in weston_compositor_repick (compositor=0x619960) at compositor.c:382
 3  0x0000000000406ac8 in destroy_surface (resource=0x6fc6f0) at compositor.c:397
 4  0x00007ffff7bd33d8 in destroy_resource (element=0x6fc6f0, data=0x7fffffffd9fc) at wayland-server.c:355
 5  0x00007ffff7bd8d98 in for_each_helper (entries=0x757808, func=0x7ffff7bd332c <destroy_resource>, data=0x7fffffffd9fc)
    at wayland-util.c:264
 6  0x00007ffff7bd8dd4 in wl_map_for_each (map=0x757808, func=0x7ffff7bd332c <destroy_resource>, data=0x7fffffffd9fc)
    at wayland-util.c:270
 7  0x00007ffff7bd34dc in wl_client_destroy (client=0x7577d0) at wayland-server.c:385
 8  0x00007ffff7bd2e36 in wl_client_connection_data (fd=17, mask=1, data=0x7577d0) at wayland-server.c:187
 9  0x00007ffff7bd5bde in wl_event_source_fd_dispatch (source=0x74cda0, ep=0x7fffffffdae0) at event-loop.c:76
 10 0x00007ffff7bd665b in wl_event_loop_dispatch (loop=0x618900, timeout=-1) at event-loop.c:462
 11 0x00007ffff7bd42a9 in wl_display_run (display=0x6188b0) at wayland-server.c:785
 12 0x000000000040b1e1 in main (argc=1, argv=0x7fffffffdef8) at compositor.c:2182

Modify popup_grab_focus() to deal with a NULL surface.

Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
2012-01-19 10:18:49 -05:00
clients window: menu leak fixes 2012-01-19 16:42:05 +02:00
data Rename wayland-compositor to weston 2012-01-03 11:04:04 -05:00
protocol Fix distcheck 2012-01-03 11:04:09 -05:00
shared Use '-' to separate words in file names 2011-12-08 12:44:27 -05:00
src shell: deal with weston_compositor_pick_surface() = NULL 2012-01-19 10:18:49 -05:00
.gitignore Clean up .gitignore files 2010-11-11 20:11:27 -05:00
autogen.sh Update autotools configuration 2010-11-06 21:04:03 -04:00
configure.ac clients: Allow compiling with the cairo glesv2 backend 2012-01-18 14:50:58 -05:00
Makefile.am Fix distcheck 2012-01-03 11:04:09 -05:00
README Split into a demo repository that holds the demo compositor and clients 2011-02-14 22:13:33 -05:00
weston-desktop-shell.ini More weston rename fixes 2012-01-03 14:35:49 -05:00
weston-tablet-shell.ini More weston rename fixes 2012-01-03 14:35:49 -05:00

Wayland Demos

This repository contains a few demos application for the Wayland
project.  There's a sample compositor that can run on KMS, under X11
or under another Wayland compositor and there's a handful of simple
clients that demonstrate various aspects of Wayland: