diff options
author | WuZhen <wuzhen@jidemail.com> | 2016-01-16 22:53:29 +0800 |
---|---|---|
committer | Mauro Rossi <issor.oruam@gmail.com> | 2016-11-01 20:41:59 +0100 |
commit | 34763549cd7de147951744d9f389b4ed5c6d686e (patch) | |
tree | 800394c981a3395d05bfe1d0696fc5bd3cec5a75 /src/gallium/state_trackers | |
parent | d3cc8f6705025d34c7519847c01b41261fff3de1 (diff) | |
download | external_mesa3d-34763549cd7de147951744d9f389b4ed5c6d686e.zip external_mesa3d-34763549cd7de147951744d9f389b4ed5c6d686e.tar.gz external_mesa3d-34763549cd7de147951744d9f389b4ed5c6d686e.tar.bz2 |
st/dri: fix double free of dri_drawable
In the callchain destroy_surface->destroyDrawable->dri_put_drawable->
dri_put_drawable->DestroyBuffer
By the semantic of it, dri_destroy_buffer should not free drawable struct,
all vendor specific and legacy swrast version of the function do not.
wonder why no body else ran into this.
NO_REF_TASK
Tested: local run
Change-Id: Ibe82d82d2e34b162e64bf0b8805f8a4553d362d5
Signed-off-by: Chih-Wei Huang <cwhuang@linux.org.tw>
Diffstat (limited to 'src/gallium/state_trackers')
-rw-r--r-- | src/gallium/state_trackers/dri/dri_drawable.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/src/gallium/state_trackers/dri/dri_drawable.c b/src/gallium/state_trackers/dri/dri_drawable.c index edcd0e6..474c331 100644 --- a/src/gallium/state_trackers/dri/dri_drawable.c +++ b/src/gallium/state_trackers/dri/dri_drawable.c @@ -176,8 +176,6 @@ dri_destroy_buffer(__DRIdrawable * dPriv) pipe_resource_reference(&drawable->msaa_textures[i], NULL); swap_fences_unref(drawable); - - FREE(drawable); } /** |