<div dir="ltr">Right, that was needed, thanks. I have a comment below, other than that it looks good to me.<br><div class="gmail_extra"><br><br><div class="gmail_quote">2013/4/15 Philipp Brüschweiler <span dir="ltr"><<a href="mailto:blei42@gmail.com" target="_blank">blei42@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Fixes a segfault. Steps to reproduce:<br>
<br>
* start weston with the x11 backend<br>
* open a terminal<br>
* click on the icon in the top left corner, choose close<br>
* close the x11 window containing weston<br>
---<br>
 src/shell.c | 2 ++<br>
 1 file changed, 2 insertions(+)<br>
<br>
diff --git a/src/shell.c b/src/shell.c<br>
index de5d6f6..9083f59 100644<br>
--- a/src/shell.c<br>
+++ b/src/shell.c<br>
@@ -1986,6 +1986,7 @@ popup_grab_end(struct wl_pointer *pointer)<br>
        if (pointer->grab->interface == &popup_grab_interface) {<br>
                wl_pointer_end_grab(grab->pointer);<br>
                shseat->popup_grab.client = NULL;<br>
+               assert(!wl_list_empty(&shseat->popup_grab.surfaces_list));<br></blockquote><div><br></div><div style>This should reset shseat->popup_grab.grab.interface too.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

                /* Send the popup_done event to all the popups open */<br>
                wl_list_for_each(shsurf, &shseat->popup_grab.surfaces_list, popup.grab_link) {<br>
                        wl_shell_surface_send_popup_done(&shsurf->resource);<br>
@@ -2028,6 +2029,7 @@ remove_popup_grab(struct shell_surface *shsurf)<br>
        wl_list_init(&shsurf->popup.grab_link);<br>
        if (wl_list_empty(&shseat->popup_grab.surfaces_list)) {<br>
                wl_pointer_end_grab(shseat->popup_grab.grab.pointer);<br>
+               shseat->popup_grab.grab.interface = NULL;<br>
        }<br>
 }<br>
<span class=""><font color="#888888"><br>
--<br>
1.8.2.1<br>
<br>
_______________________________________________<br>
wayland-devel mailing list<br>
<a href="mailto:wayland-devel@lists.freedesktop.org">wayland-devel@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/wayland-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/wayland-devel</a><br>
</font></span></blockquote></div><br></div></div>