egl: Make display and surface hash tables local.
[mesa.git] / src / egl / main / eglglobals.c
index 6265b07529aca091e13734841dc43d74e1f31ac9..f2c1c217a5d01e93dde61190484c4b7b04f3e2a6 100644 (file)
@@ -1,9 +1,12 @@
-#include <stdio.h>
+#include <stdlib.h>
 #include "eglglobals.h"
+#include "egldisplay.h"
+#include "egllog.h"
 
-
-struct _egl_global _eglGlobal = { EGL_FALSE };
-
+struct _egl_global _eglGlobal = 
+{
+   EGL_FALSE
+};
 
 /**
  * Init the fields in the _eglGlobal struct
@@ -13,13 +16,10 @@ void
 _eglInitGlobals(void)
 {
    if (!_eglGlobal.Initialized) {
-      _eglGlobal.Displays = _eglNewHashTable();
-      _eglGlobal.Contexts = _eglNewHashTable();
-      _eglGlobal.Surfaces = _eglNewHashTable();
       _eglGlobal.FreeScreenHandle = 1;
-      _eglGlobal.CurrentContext = EGL_NO_CONTEXT;
-      _eglGlobal.LastError = EGL_SUCCESS;
       _eglGlobal.Initialized = EGL_TRUE;
+
+      _eglGlobal.ClientAPIsMask = 0x0;
    }
 }
 
@@ -30,36 +30,4 @@ _eglInitGlobals(void)
 void
 _eglDestroyGlobals(void)
 {
-   /* XXX TODO walk over table entries, deleting each */
-   _eglDeleteHashTable(_eglGlobal.Displays);
-   _eglDeleteHashTable(_eglGlobal.Contexts);
-   _eglDeleteHashTable(_eglGlobal.Surfaces);
-}
-
-
-
-/**
- * Record EGL error code.
- */
-void
-_eglError(EGLint errCode, const char *msg)
-{
-   if (_eglGlobal.LastError == EGL_SUCCESS) {
-      _eglGlobal.LastError = errCode;
-      /* XXX temporary */
-      fprintf(stderr, "EGL Error 0x%x in %s\n", errCode, msg);
-   }
-}
-
-
-/**
- * Return a new screen handle/ID.
- * NOTE: we never reuse these!
- */
-EGLScreenMESA
-_eglAllocScreenHandle(void)
-{
-   EGLScreenMESA s = _eglGlobal.FreeScreenHandle;
-   _eglGlobal.FreeScreenHandle++;
-   return s;
 }