diff options
author | Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> | 2020-08-01 03:13:55 +0200 |
---|---|---|
committer | Marge Bot <eric+marge@anholt.net> | 2020-08-03 10:33:00 +0000 |
commit | 99cf9108340c2ccf7c1b05ec6f951e2e91b9c76c (patch) | |
tree | a9e0d1eb584335736ea78e42629f23d6db7af8ef /src/mesa | |
parent | 63bff6a9f89d6b8fa3a57253edb2611dd4e226bc (diff) |
mesa/st: Actually free the driver part of memory objects on destruction.
_mesa_delete_memory_object(ctx, obj) == free(obj) but doesn't free the
part of the gallium driver.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/1206
Fixes: 49f4ecc6777 "mesa/st: start adding memory object support"
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6148>
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/state_tracker/st_cb_memoryobjects.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mesa/state_tracker/st_cb_memoryobjects.c b/src/mesa/state_tracker/st_cb_memoryobjects.c index b193eb37cb2..3ef316a45f8 100644 --- a/src/mesa/state_tracker/st_cb_memoryobjects.c +++ b/src/mesa/state_tracker/st_cb_memoryobjects.c @@ -54,6 +54,12 @@ static void st_memoryobj_free(struct gl_context *ctx, struct gl_memory_object *obj) { + struct st_memory_object *st_obj = st_memory_object(obj); + struct st_context *st = st_context(ctx); + struct pipe_context *pipe = st->pipe; + struct pipe_screen *screen = pipe->screen; + + screen->memobj_destroy(screen, st_obj->memory); _mesa_delete_memory_object(ctx, obj); } |