diff options
author | Ian Romanick <ian.d.romanick@intel.com> | 2011-03-28 10:13:25 -0700 |
---|---|---|
committer | Ian Romanick <ian.d.romanick@intel.com> | 2011-03-28 19:54:51 -0700 |
commit | e21beaeb10711a38276d704c4e058cb07f9b23e6 (patch) | |
tree | 586a44fe2dee499018a41cef7a79ff7c71f869f3 /src/mesa | |
parent | 92e29dc5b0474c073b0f05d60629fc6c3decfca4 (diff) |
intel: Don't leak the tex object miptree when replacing it
Eventually the miptree refcounting interface should be cleaned up.
The assymmetry dramatically increases the probability of bugs like
this. It should be made to like like libdrm refcounting or the
refcounting style used in other parts of Mesa.
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=33046
Reviewed-by: Eric Anholt <eric@anholt.net>
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/drivers/dri/intel/intel_tex_image.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/intel/intel_tex_image.c b/src/mesa/drivers/dri/intel/intel_tex_image.c index 906f8a62710..b3a2b1b0c85 100644 --- a/src/mesa/drivers/dri/intel/intel_tex_image.c +++ b/src/mesa/drivers/dri/intel/intel_tex_image.c @@ -370,8 +370,10 @@ intelTexImage(struct gl_context * ctx, * whole object since our level didn't fit what was there * before, and any lower levels would fit into our miptree. */ - if (intelImage->mt) + if (intelImage->mt) { + intel_miptree_release(intel, &intelObj->mt); intel_miptree_reference(&intelObj->mt, intelImage->mt); + } } /* PBO fastpaths: |