mesa: Make gl_renderbuffers backed by EGL images use FinishRenderTexture.
[mesa.git] / src / mesa / drivers / dri / radeon / radeon_fbo.c
index 5f996c52b67067deb5e05b0c7bac695469963101..e546a6b365c7f6a75fcca2dfbc5a1fe308e3c7f9 100644 (file)
@@ -597,6 +597,7 @@ radeon_image_target_renderbuffer_storage(struct gl_context *ctx,
    rb->Format = image->format;
    rb->_BaseFormat = _mesa_base_fbo_format(&radeon->glCtx,
                                            image->internal_format);
+   rb->NeedsFinishRenderTexture = GL_TRUE;
 }
 
 /**
@@ -883,10 +884,11 @@ radeon_finish_render_texture(struct gl_context * ctx,
                             struct gl_renderbuffer_attachment *att)
 {
     struct gl_texture_object *tex_obj = att->Texture;
-    struct gl_texture_image *image =
-       tex_obj->Image[att->CubeMapFace][att->TextureLevel];
-    radeon_texture_image *radeon_image = (radeon_texture_image *)image;
-    
+    radeon_texture_image *radeon_image = NULL;
+
+    if (tex_obj)
+        radeon_image = (radeon_texture_image *)_mesa_get_attachment_teximage(att);
+
     if (radeon_image)
        radeon_image->used_as_render_target = GL_FALSE;