Bug 73768 - SIGSEGV closing window moved to another workspace crashes weston
Summary: SIGSEGV closing window moved to another workspace crashes weston
Status: RESOLVED FIXED
Alias: None
Product: Wayland
Classification: Unclassified
Component: weston (show other bugs)
Version: unspecified
Hardware: All All
: medium critical
Assignee: Wayland bug list
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-01-18 16:59 UTC by Ricardo Vieira
Modified: 2014-01-22 20:25 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Ricardo Vieira 2014-01-18 16:59:24 UTC
This is easily reproducible by:

1: Open 2 weston-terminal windows
2: Move second window to workspace below (ctrl+shif+arrow down)
3: Close the moved window
4: crash
Comment 1 Ricardo Vieira 2014-01-18 17:03:19 UTC
PS: you might want to have a X session running because the only vt i could switch to was the one with X
Comment 2 U. Artie Eoff 2014-01-21 21:09:51 UTC
gdb backtrace?
Comment 3 Ricardo Vieira 2014-01-21 21:45:30 UTC
i cant get anything from gdb (do i need to build all the shared libraries with symbols?)

but i did an ltrace and i think it might help 
http://pastebin.com/w4tZJuD8

looks like it has something to do with pixman, also i noticed that if you use alt+<F4> to close the window, weston doesn't crash but the other terminal gets pulled to the current workspace.
Comment 4 Ricardo Vieira 2014-01-21 22:09:22 UTC
i had to run the commands before weston crashed because the window grabbed keyboard and mouse after the crash

http://pastebin.com/M023n8i4
Comment 5 Kristian Høgsberg 2014-01-22 20:25:45 UTC
commit d500bf1ac990d0d776c7a444a7478d2c9bb0e8fd
Author: Kristian Høgsberg <krh@bitplanet.net>
Date:   Wed Jan 22 12:25:20 2014 -0800

    shell: Properly track the focus state surface
    
    We have to move the surface destroy listener around as we track the
    currently focused surface.  Introduce a helper function,
    focus_state_set_focus() for this and use throughout.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=73768


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.