Merge change 573 into donut

* changes:
  Add a grey line to the top of the search plate image so it doesn't bleed into the white of the status bar.
diff --git a/include/utils/threads.h b/include/utils/threads.h
index 8d8d46a..b320915 100644
--- a/include/utils/threads.h
+++ b/include/utils/threads.h
@@ -79,6 +79,13 @@
     ANDROID_PRIORITY_LESS_FAVORABLE = +1,
 };
 
+enum {
+    ANDROID_TGROUP_DEFAULT          = 0,
+    ANDROID_TGROUP_BG_NONINTERACT   = 1,
+    ANDROID_TGROUP_FG_BOOST         = 2,
+    ANDROID_TGROUP_MAX              = ANDROID_TGROUP_FG_BOOST,
+};
+
 // Create and run a new thread.
 extern int androidCreateThread(android_thread_func_t, void *);
 
diff --git a/opengl/libs/EGL/egl.cpp b/opengl/libs/EGL/egl.cpp
index 6fc0fed..5ed3ecc 100644
--- a/opengl/libs/EGL/egl.cpp
+++ b/opengl/libs/EGL/egl.cpp
@@ -273,6 +273,8 @@
 static __attribute__((noinline))
 void *load_driver(const char* driver, gl_hooks_t* hooks)
 {
+    //LOGD("%s", driver);
+    char scrap[256];
     void* dso = dlopen(driver, RTLD_NOW | RTLD_LOCAL);
     LOGE_IF(!dso,
             "couldn't load <%s> library (%s)",
@@ -310,7 +312,7 @@
             *curr++ = f;
             api++;
         }
-        
+
         gl_hooks_t::gl_t* gl = &hooks->gl;
         curr = (__eglMustCastToProperFunctionPointerType*)gl;
         api = gl_names;
@@ -321,10 +323,32 @@
             if (f == NULL) {
                 // couldn't find the entry-point, use eglGetProcAddress()
                 f = getProcAddress(name);
-                if (f == NULL) {
-                    f = (__eglMustCastToProperFunctionPointerType)gl_unimplemented;
+            }
+            if (f == NULL) {
+                // Try without the OES postfix
+                ssize_t index = ssize_t(strlen(name)) - 3;
+                if ((index>0 && (index<255)) && (!strcmp(name+index, "OES"))) {
+                    strncpy(scrap, name, index);
+                    scrap[index] = 0;
+                    f = (__eglMustCastToProperFunctionPointerType)dlsym(dso, scrap);
+                    //LOGD_IF(f, "found <%s> instead", scrap);
                 }
             }
+            if (f == NULL) {
+                // Try with the OES postfix
+                ssize_t index = ssize_t(strlen(name)) - 3;
+                if ((index>0 && (index<252)) && (strcmp(name+index, "OES"))) {
+                    strncpy(scrap, name, index);
+                    scrap[index] = 0;
+                    strcat(scrap, "OES");
+                    f = (__eglMustCastToProperFunctionPointerType)dlsym(dso, scrap);
+                    //LOGD_IF(f, "found <%s> instead", scrap);
+                }
+            }
+            if (f == NULL) {
+                //LOGD("%s", name);
+                f = (__eglMustCastToProperFunctionPointerType)gl_unimplemented;
+            }
             *curr++ = f;
             api++;
         }
diff --git a/opengl/tools/glgen/specs/gles11/checks.spec b/opengl/tools/glgen/specs/gles11/checks.spec
index 9ff1205..97dac2e 100644
--- a/opengl/tools/glgen/specs/gles11/checks.spec
+++ b/opengl/tools/glgen/specs/gles11/checks.spec
@@ -59,87 +59,3 @@
 glTexGeni unsupported

 glTexGenx unsupported

 glWeightPointerOES unsupported

-// Lots of unsupported

-glAlphaFuncxOES unsupported

-glBlendEquationOES unsupported

-glBlendEquationSeparateOES unsupported

-glBlendFuncSeparateOES unsupported

-glClearColorxOES unsupported

-glClearDepthfOES unsupported

-glClearDepthxOES unsupported

-glClipPlanefOES unsupported

-glClipPlanefOES unsupported

-glClipPlanexOES unsupported

-glClipPlanexOES unsupported

-glColor4xOES unsupported

-glDepthRangefOES unsupported

-glDepthRangexOES unsupported

-glEGLImageTargetRenderbufferStorageOES unsupported

-glEGLImageTargetTexture2DOES unsupported

-glFogxOES unsupported

-glFogxvOES unsupported

-glFogxvOES unsupported

-glFrustumfOES unsupported

-glFrustumxOES unsupported

-glGetClipPlanefOES unsupported

-glGetClipPlanefOES unsupported

-glGetClipPlanexOES unsupported

-glGetClipPlanexOES unsupported

-glGetFixedvOES unsupported

-glGetFixedvOES unsupported

-glGetLightxvOES unsupported

-glGetLightxvOES unsupported

-glGetMaterialxvOES unsupported

-glGetMaterialxvOES unsupported

-glGetTexEnvxvOES unsupported

-glGetTexEnvxvOES unsupported

-glGetTexGenfvOES unsupported

-glGetTexGenfvOES unsupported

-glGetTexGenivOES unsupported

-glGetTexGenivOES unsupported

-glGetTexGenxvOES unsupported

-glGetTexGenxvOES unsupported

-glGetTexParameterxvOES unsupported

-glGetTexParameterxvOES unsupported

-glLightModelxOES unsupported

-glLightModelxvOES unsupported

-glLightModelxvOES unsupported

-glLightxOES unsupported

-glLightxvOES unsupported

-glLightxvOES unsupported

-glLineWidthxOES unsupported

-glLoadMatrixxOES unsupported

-glLoadMatrixxOES unsupported

-glMaterialxOES unsupported

-glMaterialxvOES unsupported

-glMaterialxvOES unsupported

-glMultMatrixxOES unsupported

-glMultMatrixxOES unsupported

-glMultiTexCoord4xOES unsupported

-glNormal3xOES unsupported

-glOrthofOES unsupported

-glOrthoxOES unsupported

-glPointParameterxOES unsupported

-glPointParameterxvOES unsupported

-glPointParameterxvOES unsupported

-glPointSizexOES unsupported

-glPolygonOffsetxOES unsupported

-glRotatexOES unsupported

-glSampleCoveragexOES unsupported

-glScalexOES unsupported

-glTexEnvxOES unsupported

-glTexEnvxvOES unsupported

-glTexEnvxvOES unsupported

-glTexGenfOES unsupported

-glTexGenfvOES unsupported

-glTexGenfvOES unsupported

-glTexGeniOES unsupported

-glTexGenivOES unsupported

-glTexGenivOES unsupported

-glTexGenxOES unsupported

-glTexGenxvOES unsupported

-glTexGenxvOES unsupported

-glTexParameterxOES unsupported

-glTexParameterxvOES unsupported

-glTexParameterxvOES unsupported

-glTranslatexOES unsupported
\ No newline at end of file
diff --git a/opengl/tools/glgen/stubs/gles11/glGetString.java b/opengl/tools/glgen/stubs/gles11/glGetString.java
index 8c7881c..fba249b 100644
--- a/opengl/tools/glgen/stubs/gles11/glGetString.java
+++ b/opengl/tools/glgen/stubs/gles11/glGetString.java
@@ -1,16 +1,5 @@
     // C function const GLubyte * glGetString ( GLenum name )

 

-    public native String _glGetString(

+    public static native String glGetString(

         int name

     );

-

-    public String glGetString(

-        int name

-    ) {

-        String returnValue;

-        returnValue = _glGetString(

-            name

-        );

-        return returnValue;

-    }

-

diff --git a/opengl/tools/glgen/stubs/gles11/glGetString.nativeReg b/opengl/tools/glgen/stubs/gles11/glGetString.nativeReg
index e64187c..a4af31f 100644
--- a/opengl/tools/glgen/stubs/gles11/glGetString.nativeReg
+++ b/opengl/tools/glgen/stubs/gles11/glGetString.nativeReg
@@ -1 +1 @@
-{"_glGetString", "(I)Ljava/lang/String;", (void *) android_glGetString },

+{"glGetString", "(I)Ljava/lang/String;", (void *) android_glGetString },