Mesa (master): gallium/u_slab: fix possible crash in util_slab_destroy
Marek Olšák
mareko at kemper.freedesktop.org
Thu Feb 23 20:52:56 UTC 2012
Module: Mesa
Branch: master
Commit: 99d5c1a13b97b9133a166c00c9fba1bec5f4bd9e
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=99d5c1a13b97b9133a166c00c9fba1bec5f4bd9e
Author: Marek Olšák <maraeo at gmail.com>
Date: Tue Feb 21 18:40:11 2012 +0100
gallium/u_slab: fix possible crash in util_slab_destroy
It may happen if util_slab_create has not been called.
Reviewed-by: Jerome Glisse <jglisse at redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher at amd.com>
---
src/gallium/auxiliary/util/u_slab.c | 8 +++++---
1 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/src/gallium/auxiliary/util/u_slab.c b/src/gallium/auxiliary/util/u_slab.c
index 21bf2d7..f9f5ef6 100644
--- a/src/gallium/auxiliary/util/u_slab.c
+++ b/src/gallium/auxiliary/util/u_slab.c
@@ -160,9 +160,11 @@ void util_slab_destroy(struct util_slab_mempool *pool)
{
struct util_slab_page *page, *temp;
- foreach_s(page, temp, &pool->list) {
- remove_from_list(page);
- FREE(page);
+ if (pool->list.next) {
+ foreach_s(page, temp, &pool->list) {
+ remove_from_list(page);
+ FREE(page);
+ }
}
pipe_mutex_destroy(pool->mutex);
More information about the mesa-commit
mailing list