surface: Don't calculate geometry for buffer-less subsurfaces
A wl_surface may have a wl_subsurface interface, but no buffers attached yet, even though the geometry calculation code for surfaces/subsurfaces assumes everything has already a buffer. Just skip subsurfaces that don't have a buffer, those can't be set a geometry yet, and right now it's crashing accessing the texture from the NULL surface->buffer. https://bugzilla.gnome.org/show_bug.cgi?id=735452
This commit is contained in:
parent
f9818f890b
commit
e822e51752
@ -187,6 +187,9 @@ calculate_surface_window_geometry (MetaWaylandSurface *surface,
|
||||
if (!CLUTTER_ACTOR_IS_VISIBLE (surface_actor))
|
||||
return;
|
||||
|
||||
if (!surface->buffer)
|
||||
return;
|
||||
|
||||
/* XXX: Is there a better way to do this using Clutter APIs? */
|
||||
clutter_actor_get_position (surface_actor, &x, &y);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user