summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/vc4/vc4_screen.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/drivers/vc4/vc4_screen.c')
-rw-r--r--src/gallium/drivers/vc4/vc4_screen.c11
1 files changed, 2 insertions, 9 deletions
diff --git a/src/gallium/drivers/vc4/vc4_screen.c b/src/gallium/drivers/vc4/vc4_screen.c
index bad27d587ba..5b78ff87171 100644
--- a/src/gallium/drivers/vc4/vc4_screen.c
+++ b/src/gallium/drivers/vc4/vc4_screen.c
@@ -105,7 +105,7 @@ vc4_screen_destroy(struct pipe_screen *pscreen)
_mesa_hash_table_destroy(screen->bo_handles, NULL);
vc4_bufmgr_destroy(pscreen);
slab_destroy_parent(&screen->transfer_pool);
- free(screen->ro);
+ screen->ro->destroy(screen->ro);
#ifdef USE_VC4_SIMULATOR
vc4_simulator_destroy(screen);
@@ -552,14 +552,7 @@ vc4_screen_create(int fd, struct renderonly *ro)
pscreen->is_format_supported = vc4_screen_is_format_supported;
screen->fd = fd;
- if (ro) {
- screen->ro = renderonly_dup(ro);
- if (!screen->ro) {
- fprintf(stderr, "Failed to dup renderonly object\n");
- ralloc_free(screen);
- return NULL;
- }
- }
+ screen->ro = ro;
list_inithead(&screen->bo_cache.time_list);
(void) mtx_init(&screen->bo_handles_mutex, mtx_plain);