From: Pekka Paalanen <pekka.paala...@collabora.co.uk> Add more sanity checks to get_ivi_shell_surface() just in case.
If the configure hook is set, we must always have non-NULL configure_private. Check the ivi_shell_surface matches the surface. Signed-off-by: Pekka Paalanen <pekka.paala...@collabora.co.uk> --- ivi-shell/ivi-shell.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/ivi-shell/ivi-shell.c b/ivi-shell/ivi-shell.c index d136f46..c502c74 100644 --- a/ivi-shell/ivi-shell.c +++ b/ivi-shell/ivi-shell.c @@ -81,10 +81,16 @@ ivi_shell_surface_configure(struct weston_surface *, int32_t, int32_t); static struct ivi_shell_surface * get_ivi_shell_surface(struct weston_surface *surface) { - if (surface->configure == ivi_shell_surface_configure) - return surface->configure_private; + struct ivi_shell_surface *shsurf; + + if (surface->configure != ivi_shell_surface_configure) + return NULL; + + shsurf = surface->configure_private; + assert(shsurf); + assert(shsurf->surface == surface); - return NULL; + return shsurf; } void -- 2.7.3 _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/wayland-devel