OSDN Git Service

mesa: don't use genned but unnamed xfb objects.
[android-x86/external-mesa.git] / src / mesa / main / objectlabel.c
index b622d6a..974abbc 100644 (file)
@@ -107,6 +107,12 @@ copy_label(const GLchar *src, GLchar *dst, GLsizei *length, GLsizei bufSize)
    if (src)
       labelLen = strlen(src);
 
+   if (bufSize == 0) {
+      if (length)
+         *length = labelLen;
+      return;
+   }
+
    if (dst) {
       if (src) {
          if (bufSize <= labelLen)
@@ -170,9 +176,13 @@ get_label_pointer(struct gl_context *ctx, GLenum identifier, GLuint name,
       break;
    case GL_TRANSFORM_FEEDBACK:
       {
+         /* From the GL 4.5 specification, page 536:
+          * "An INVALID_VALUE error is generated if name is not the name of a
+          *  valid object of the type specified by identifier."
+          */
          struct gl_transform_feedback_object *tfo =
             _mesa_lookup_transform_feedback_object(ctx, name);
-         if (tfo)
+         if (tfo && tfo->EverBound)
             labelPtr = &tfo->Label;
       }
       break;