Mesa (10.1): st/mesa: Fix NULL pointer dereference for incomplete framebuffers
Carl Worth
cworth at kemper.freedesktop.org
Thu May 1 14:31:39 UTC 2014
Module: Mesa
Branch: 10.1
Commit: 0f90c69a5ce857ec3cbe27c8b5acc3f087204e80
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=0f90c69a5ce857ec3cbe27c8b5acc3f087204e80
Author: Michel Dänzer <michel.daenzer at amd.com>
Date: Fri Apr 25 11:40:39 2014 +0900
st/mesa: Fix NULL pointer dereference for incomplete framebuffers
This can happen with glamor, which uses EGL_KHR_surfaceless_context and
only explicitly binds GL_READ_FRAMEBUFFER for glReadPixels.
Cc: mesa-stable at lists.freedesktop.org
Reviewed-by: Brian Paul <brianp at vmware.com>
(cherry picked from commit 136c437cea3ebc9541735bb40951128e1210f06b)
---
src/mesa/state_tracker/st_manager.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/mesa/state_tracker/st_manager.c b/src/mesa/state_tracker/st_manager.c
index 215b276..f501294 100644
--- a/src/mesa/state_tracker/st_manager.c
+++ b/src/mesa/state_tracker/st_manager.c
@@ -182,8 +182,13 @@ st_framebuffer_validate(struct st_framebuffer *stfb,
uint width, height;
unsigned i;
boolean changed = FALSE;
- int32_t new_stamp = p_atomic_read(&stfb->iface->stamp);
+ int32_t new_stamp;
+ /* Check for incomplete framebuffers (e.g. EGL_KHR_surfaceless_context) */
+ if (!stfb->iface)
+ return;
+
+ new_stamp = p_atomic_read(&stfb->iface->stamp);
if (stfb->iface_stamp == new_stamp)
return;
More information about the mesa-commit
mailing list