diff options
author | Christopher James Halse Rogers <raof@ubuntu.com> | 2013-02-16 16:39:07 +1100 |
---|---|---|
committer | Ian Romanick <ian.d.romanick@intel.com> | 2013-02-17 14:13:27 -0800 |
commit | 96fb4d61fb0aee76faad8b8b063ae9a833b2aeab (patch) | |
tree | 9c831ca38aef7a5ada31bdafd4b0779b210dac84 | |
parent | d8a0439c65ab4fcc87ee1607b98b6efb18491117 (diff) | |
download | mesa-96fb4d61fb0aee76faad8b8b063ae9a833b2aeab.tar.gz |
i965: Fix leak in blorp CopyTexSubImage2D
_mesa_delete_renderbuffer does not call the driver-specific
renderbuffer delete function, so the blorp code was leaking the
Intel-specific bits, including some GEM objects.
Call the renderbuffer's ->Delete() method instead, which does the
right thing.
Fixes Unity rapidly sending the machine into the arms of the OOM-killer
Note: This is a candidate for the 9.1 branch.
Reviewed-by: Eric Anholt <eric@anholt.net>
(cherry picked from commit dd599188d2868838541859a76800a8420958d358)
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_blorp_blit.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp b/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp index 3615b097cef..d1ab7cb171b 100644 --- a/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp +++ b/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp @@ -337,7 +337,7 @@ brw_blorp_copytexsubimage(struct intel_context *intel, GLbitfield buffer_bit = 0; if (!formats_match(buffer_bit, src_irb, dst_irb)) { - _mesa_delete_renderbuffer(ctx, dst_rb); + dst_rb->Delete(ctx, dst_rb); return false; } @@ -387,7 +387,7 @@ brw_blorp_copytexsubimage(struct intel_context *intel, srcX0, srcY0, dstX0, dstY0, dstX1, dstY1, false, mirror_y); } - _mesa_delete_renderbuffer(ctx, dst_rb); + dst_rb->Delete(ctx, dst_rb); return true; } |