Reviewed-by: Guillaume Charifi <guillaume.char...@sfr.fr>

Le 20/09/2018 à 10:27, Erik Faye-Lund a écrit :
In st_renderbuffer_alloc_storage, we avoid allocating storage for
zero-sized buffers, leading to this pointer being NULL. We already
take care to avoid dereferencing these pointers for color-buffers,
but not for depth/stencil-buffers.

So let's thread a bit more carefully here.

This avoids a crash while running Piglit's glx/glx-visuals-stencil
test, both on virgl and r600g.

Signed-off-by: Erik Faye-Lund <erik.faye-l...@collabora.com>
---
  src/mesa/state_tracker/st_atom_framebuffer.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/mesa/state_tracker/st_atom_framebuffer.c 
b/src/mesa/state_tracker/st_atom_framebuffer.c
index 807c312a5d..a0dd0d1f64 100644
--- a/src/mesa/state_tracker/st_atom_framebuffer.c
+++ b/src/mesa/state_tracker/st_atom_framebuffer.c
@@ -181,7 +181,8 @@ st_update_framebuffer_state( struct st_context *st )
           st_update_renderbuffer_surface(st, strb);
        }
        framebuffer.zsbuf = strb->surface;
-      update_framebuffer_size(&framebuffer, strb->surface);
+      if (strb->surface)
+         update_framebuffer_size(&framebuffer, strb->surface);
     }
     else
        framebuffer.zsbuf = NULL;

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to