diff options
author | Benjamin Franzke <[email protected]> | 2011-04-29 17:04:11 +0200 |
---|---|---|
committer | Benjamin Franzke <[email protected]> | 2011-04-29 17:05:16 +0200 |
commit | dc520d4fefa6a92b3a8f2eed3c5a1044dfccb3ff (patch) | |
tree | b5b1345000a09848d6fe9468fad4a78fcda53e88 /src | |
parent | 8a58eccc626c5b0b75c64e08b081cef4a983a1a0 (diff) |
egl/wayland: Fix possible lockup in drm initialization
Lockup happens when wl_drm interface is not available.
Diffstat (limited to 'src')
-rw-r--r-- | src/egl/drivers/dri2/platform_wayland.c | 2 | ||||
-rw-r--r-- | src/gallium/state_trackers/egl/wayland/native_drm.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/egl/drivers/dri2/platform_wayland.c b/src/egl/drivers/dri2/platform_wayland.c index 030c68777af..1b75ffea0c5 100644 --- a/src/egl/drivers/dri2/platform_wayland.c +++ b/src/egl/drivers/dri2/platform_wayland.c @@ -680,7 +680,7 @@ dri2_initialize_wayland(_EGLDriver *drv, _EGLDisplay *disp) id = wl_display_get_global(dri2_dpy->wl_dpy, "wl_drm", 1); if (id == 0) - wl_display_iterate(dri2_dpy->wl_dpy, WL_DISPLAY_READABLE); + force_roundtrip(dri2_dpy->wl_dpy); id = wl_display_get_global(dri2_dpy->wl_dpy, "wl_drm", 1); if (id == 0) goto cleanup_dpy; diff --git a/src/gallium/state_trackers/egl/wayland/native_drm.c b/src/gallium/state_trackers/egl/wayland/native_drm.c index 75c871d6030..604720f6e5f 100644 --- a/src/gallium/state_trackers/egl/wayland/native_drm.c +++ b/src/gallium/state_trackers/egl/wayland/native_drm.c @@ -205,7 +205,7 @@ wayland_drm_display_init_screen(struct native_display *ndpy) id = wl_display_get_global(drmdpy->base.dpy, "wl_drm", 1); if (id == 0) - wl_display_iterate(drmdpy->base.dpy, WL_DISPLAY_READABLE); + force_roundtrip(drmdpy->base.dpy); id = wl_display_get_global(drmdpy->base.dpy, "wl_drm", 1); if (id == 0) return FALSE; |