compositor-wayland: Assign func pointers pre init
diff --git a/compositor/compositor-wayland.c b/compositor/compositor-wayland.c
index ed8a2ba..8a40137 100644
--- a/compositor/compositor-wayland.c
+++ b/compositor/compositor-wayland.c
@@ -530,6 +530,11 @@
if (wayland_compositor_init_egl(c) < 0)
return NULL;
+ c->base.destroy = wayland_destroy;
+ c->base.authenticate = wayland_authenticate;
+ c->base.present = wayland_compositor_present;
+ c->base.create_buffer = wlsc_drm_buffer_create;
+
/* Can't init base class until we have a current egl context */
if (wlsc_compositor_init(&c->base, display) < 0)
return NULL;
@@ -549,9 +554,5 @@
if (c->parent.wl_source == NULL)
return NULL;
- c->base.destroy = wayland_destroy;
- c->base.authenticate = wayland_authenticate;
- c->base.present = wayland_compositor_present;
-
return &c->base;
}