opengles emulator: 2.0: handle texture=0 on glFramebufferTexture2D

texture=0 has a special meaning - detach texture. Therefore we should pass
it on as 0 rather than look for the global name in the name space.

Change-Id: If7d0174a7fd07fc13a75430312b605497653f01b
diff --git a/tools/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp b/tools/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp
index 69781f1..4439782 100644
--- a/tools/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp
+++ b/tools/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp
@@ -612,10 +612,18 @@
                    GLESv2Validate::framebufferAttachment(attachment)),GL_INVALID_ENUM);
     SET_ERROR_IF(level != 0, GL_INVALID_VALUE);
 
-    if(ctx->shareGroup().Ptr()) {
+    if(texture == 0)
+    {
+        // Special case - detach texture
+        ctx->dispatcher().glFramebufferTexture2DEXT(target,attachment,textarget,0,level);
+    }
+    else
+    {
+        if(ctx->shareGroup().Ptr()) {
             ObjectLocalName texname = TextureLocalName(textarget,texture);
             GLuint globalTextureName = ctx->shareGroup()->getGlobalName(TEXTURE,texname);
             ctx->dispatcher().glFramebufferTexture2DEXT(target,attachment,textarget,globalTextureName,level);
+        }
     }
 }