Bug 73448 - SIGSEGV in common_surface_move
Summary: SIGSEGV in common_surface_move
Status: VERIFIED FIXED
Alias: None
Product: Wayland
Classification: Unclassified
Component: weston (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Wayland bug list
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-01-09 20:10 UTC by Anu Reddy
Modified: 2014-05-08 19:25 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
weston crash gdb backtrace (18.08 KB, text/plain)
2014-01-09 20:15 UTC, Anu Reddy
Details
weston terminals (31.34 KB, image/png)
2014-01-09 20:25 UTC, Anu Reddy
Details

Description Anu Reddy 2014-01-09 20:10:20 UTC
Move the terminals around the screen and highlight the text in between causes Weston crash. I am able to reproduce this most of the times. See attached gdb backtrace.

Steps:
1.	Launch weston
2.	Open multiple terminals
3.	Move the terminals around the screen rapidly using touch
4.	Touch and highlight the text in Weston terminals
5.	Perform step 3
6.	Observe Weston crash

Software Stack
Kernel:3.9.5-301.fc19.x86_64
wayland (HEAD) remotes/origin/master-0-gcd0dccd
drm (HEAD) libdrm-2.4.50-0-g4c5de72
mesa (HEAD) remotes/origin/10.0-0-ge833368
libva (HEAD) libva-1.2.1-0-g88ed1eb
intel-driver (HEAD) 1.2.1-0-g8f306e3
weston (HEAD) remotes/origin/master-0-g917711b
efl (HEAD) remotes/origin/efl-1.8-0-g3801c0d
elementary (HEAD) remotes/origin/elementary-1.8-0-g1d30461
wayland-fits (HEAD) remotes/origin/HEAD-0-gcd75d94
Comment 1 Anu Reddy 2014-01-09 20:15:42 UTC
Created attachment 91773 [details]
weston crash gdb backtrace
Comment 2 Anu Reddy 2014-01-09 20:25:41 UTC
Created attachment 91774 [details]
weston terminals
Comment 3 Kristian Høgsberg 2014-01-09 23:43:48 UTC
commit 70f290198937f76b7cf8de3ae9618d0aa5880e80
Author: Kristian Høgsberg <krh@bitplanet.net>
Date:   Thu Jan 9 15:43:17 2014 -0800

    shell: Make sure we still have touch or pointer focus when moving/resizing
    
    It's possible to touch a surface to move it and let go before we get
    to common_surface_move(), in which case we don't have a touch focus
    when we get there.  For pointers, we could click a surface, but have the
    surface go away before we get to common_surface_move(), in which
    case the button count is non-zero, but we don't have a surface.
    
    In either case we crash, so let's add a check to make sure we still
    have a focus surface before we try to move it.
    
    Closes: https://bugs.freedesktop.org/show_bug.cgi?id=73448


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.