compositor: don't crash if destroying a compositor without a backend
authorGiulio Camuffo <giuliocamuffo@gmail.com>
Sat, 3 Oct 2015 13:25:15 +0000 (16:25 +0300)
committerDerek Foreman <derekf@osg.samsung.com>
Mon, 5 Oct 2015 21:22:13 +0000 (16:22 -0500)
Calling weston_compositor_destroy() on a pointer returned by
weston_compositor_create() should be always valid, even if the
compositor does not have yet a backend.

Signed-off-by: Giulio Camuffo <giuliocamuffo@gmail.com>
Reviewed-by: Derek Foreman <derekf@osg.samsung.com>
src/compositor.c

index 125afd528813827d742285c5b689af384d4f52a6..f8437e8191c34abaa84c56b83b2da95063c9c678 100644 (file)
@@ -4767,7 +4767,8 @@ weston_compositor_destroy(struct weston_compositor *compositor)
 
        weston_compositor_xkb_destroy(compositor);
 
-       compositor->backend->destroy(compositor);
+       if (compositor->backend)
+               compositor->backend->destroy(compositor);
        free(compositor);
 }