summaryrefslogtreecommitdiff
path: root/src/mesa/pipe/softpipe/sp_region.c
diff options
context:
space:
mode:
authorBrian <brian.paul@tungstengraphics.com>2007-08-11 17:03:51 +0100
committerBrian <brian.paul@tungstengraphics.com>2007-08-11 17:03:51 +0100
commit37fdc69a99a7692d337fb4efaea97df842490f21 (patch)
tree34124b899f0b5db209b5368b7d9218f2e4f97a5a /src/mesa/pipe/softpipe/sp_region.c
parent83521ee66ad3f3cd3ec8212d6f746caecdc6c407 (diff)
fix invalid usage of buffer_unreference()
Need to pass the address of the buffer ptr, not the buffer ptr. Before, the region->buffer type was void * so it wasn't effectively type-checked. Changing the type to pipe_buffer_object* allows the compiler to detect the error. Fixing this solves a segfault.
Diffstat (limited to 'src/mesa/pipe/softpipe/sp_region.c')
-rw-r--r--src/mesa/pipe/softpipe/sp_region.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mesa/pipe/softpipe/sp_region.c b/src/mesa/pipe/softpipe/sp_region.c
index 115f3ab826..10b7479e97 100644
--- a/src/mesa/pipe/softpipe/sp_region.c
+++ b/src/mesa/pipe/softpipe/sp_region.c
@@ -119,7 +119,7 @@ sp_region_release(struct pipe_context *pipe, struct pipe_region **region)
assert((*region)->map_refcount == 0);
sp->pipe.winsys->buffer_unreference( sp->pipe.winsys,
- (*region)->buffer );
+ &((*region)->buffer) );
free(*region);
}
*region = NULL;