[Wayland-bugs] [Bug 76662] SIGSEGV in wl_resource_post_event during wl_argument_from_va_list

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Fri Apr 4 04:35:25 PDT 2014


https://bugs.freedesktop.org/show_bug.cgi?id=76662

--- Comment #4 from Ander Conselvan de Oliveira <conselvan2 at gmail.com> ---
It seems the problem is related to the popup grab not ending at the moment the
button is released after a menu item was clicked. In popup_grab_button()
there's a statement

        if (/* there's focus */) {
               /* send button event */
        } else if (state == WL_POINTER_BUTTON_STATE_RELEASED &&
                   (shseat->popup_grab.initial_up ||
                    time - shseat->seat->pointer->grab_time > 500)) {
                popup_grab_end(grab->pointer);
        }

If that was just two separate 'if' statements, the grab would end at the moment
the button is released. I couldn't really figure out why the 'else if' is there
looking through the git history, but I take there's something I'm not seeing.

The way it is now, the grab ends only when the destroy animation finishes or
the user click somewhere else. In the latter case, if the click is in a surface
that belongs to another client, the click event is swallowed.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/wayland-bugs/attachments/20140404/40c47aba/attachment.html>


More information about the Wayland-bugs mailing list