mesa/main: In register_surface() verify gl_texture_object was found
[mesa.git] / src / mesa / main / vdpau.c
index f1b3eceee3166ce40045df530822b861873d92eb..975b812cda5f95ccb2766a966af4ec308900b0e8 100644 (file)
@@ -145,6 +145,12 @@ register_surface(struct gl_context *ctx, GLboolean isOutput,
    for (i = 0; i < numTextureNames; ++i) {
       struct gl_texture_object *tex;
       tex  = _mesa_lookup_texture(ctx, textureNames[i]);
+      if (tex == NULL) {
+         free(surf);
+         _mesa_error(ctx, GL_INVALID_OPERATION,
+                     "VDPAURegisterSurfaceNV(texture ID not found)");
+         return (GLintptr)NULL;
+      }
 
       _mesa_lock_texture(ctx, tex);