egl: Simplify the "driver" interface
"Driver" isn't a great word for what this layer is, it's effectively a build-time choice about what OS you're targeting. Despite that both of the extant backends totally ignore the display argument, the old code would only set up the backend relative to a display. That causes problems! One problem is it means eglGetProcAddress can generate X or Wayland protocol when it tries to connect to a default display so it can call into the backend, which is, you know, completely bonkers. Any other EGL API that doesn't reference a display, like EGL_EXT_device_query, would have the same issue. Fortunately this is a problem that can be solved with the delete key. Reviewed-by:Eric Anholt <eric@anholt.net> Signed-off-by:
Adam Jackson <ajax@redhat.com>
- docs/egl.html 0 additions, 10 deletionsdocs/egl.html
- src/egl/drivers/dri2/egl_dri2.c 1 addition, 3 deletionssrc/egl/drivers/dri2/egl_dri2.c
- src/egl/drivers/haiku/egl_haiku.cpp 1 addition, 1 deletionsrc/egl/drivers/haiku/egl_haiku.cpp
- src/egl/main/egldriver.c 19 additions, 243 deletionssrc/egl/main/egldriver.c
- src/egl/main/egldriver.h 1 addition, 5 deletionssrc/egl/main/egldriver.h