summaryrefslogtreecommitdiffstats
path: root/src/egl/drivers/haiku
diff options
context:
space:
mode:
authorEmil Velikov <emil.l.velikov@gmail.com>2015-06-11 12:33:55 +0100
committerEmil Velikov <emil.l.velikov@gmail.com>2015-06-12 15:17:44 +0100
commite77a32fcaed30815d0f95e0d05432e8637ab0f3e (patch)
tree555eadbfa5766849a7c13648760d909cc2d26142 /src/egl/drivers/haiku
parentd38a80ba6c75b8f594a4ff88e59ede254075a859 (diff)
downloadexternal_mesa3d-e77a32fcaed30815d0f95e0d05432e8637ab0f3e.zip
external_mesa3d-e77a32fcaed30815d0f95e0d05432e8637ab0f3e.tar.gz
external_mesa3d-e77a32fcaed30815d0f95e0d05432e8637ab0f3e.tar.bz2
egl/haiku: minor surface management cleanups
Drop the stub/unused function haiku_create_surface() and add some basic implementation for destroy_surface() Cc: Alexander von Gluck IV <kallisti5@unixzen.com> Acked-by: Brian Paul <brianp@vmware.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Diffstat (limited to 'src/egl/drivers/haiku')
-rw-r--r--src/egl/drivers/haiku/egl_haiku.cpp15
1 files changed, 4 insertions, 11 deletions
diff --git a/src/egl/drivers/haiku/egl_haiku.cpp b/src/egl/drivers/haiku/egl_haiku.cpp
index 2933acc..154b3af 100644
--- a/src/egl/drivers/haiku/egl_haiku.cpp
+++ b/src/egl/drivers/haiku/egl_haiku.cpp
@@ -80,17 +80,6 @@ struct haiku_egl_surface
* Called via eglCreateWindowSurface(), drv->API.CreateWindowSurface().
*/
static _EGLSurface *
-haiku_create_surface(_EGLDriver *drv, _EGLDisplay *disp, EGLint type,
- _EGLConfig *conf, void *native_surface, const EGLint *attrib_list)
-{
- return NULL;
-}
-
-
-/**
- * Called via eglCreateWindowSurface(), drv->API.CreateWindowSurface().
- */
-static _EGLSurface *
haiku_create_window_surface(_EGLDriver *drv, _EGLDisplay *disp,
_EGLConfig *conf, void *native_window, const EGLint *attrib_list)
{
@@ -147,6 +136,10 @@ haiku_create_pbuffer_surface(_EGLDriver *drv, _EGLDisplay *disp,
static EGLBoolean
haiku_destroy_surface(_EGLDriver *drv, _EGLDisplay *disp, _EGLSurface *surf)
{
+ if (_eglPutSurface(surf)) {
+ // XXX: detach haiku_egl_surface::gl from the native window and destroy it
+ free(surf);
+ }
return EGL_TRUE;
}