window: make display_create_surface() shm-only
Nothing uses it to create EGL-surfaces outside of window.c. This makes
refactoring the EGL-based code easier, since we do not need to support
EGL-based Cairo surfaces without an associated struct window.
Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
diff --git a/clients/window.c b/clients/window.c
index 44a057c..8cf53d3 100644
--- a/clients/window.c
+++ b/clients/window.c
@@ -636,13 +636,8 @@
{
if (check_size(rectangle) < 0)
return NULL;
-#ifdef HAVE_CAIRO_EGL
- if (display->dpy && !(flags & SURFACE_SHM))
- return display_create_egl_window_surface(display,
- surface,
- flags,
- rectangle);
-#endif
+
+ assert(flags & SURFACE_SHM);
return display_create_shm_surface(display, rectangle, flags, NULL);
}
@@ -940,10 +935,13 @@
window_resize_cairo_window_surface(window);
return;
}
- surface = display_create_surface(window->display,
- window->surface,
- &window->allocation, flags);
- break;
+ if (window->display->dpy) {
+ surface = display_create_egl_window_surface(
+ window->display, window->surface,
+ flags, &window->allocation);
+ break;
+ }
+ /* fall through */
#endif
case WINDOW_BUFFER_TYPE_SHM:
surface = display_create_shm_surface(window->display,