aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'freedreno')
-rw-r--r--freedreno/freedreno_device.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/freedreno/freedreno_device.c b/freedreno/freedreno_device.c
index dba7ec47..12b95fd0 100644
--- a/freedreno/freedreno_device.c
+++ b/freedreno/freedreno_device.c
@@ -112,13 +112,13 @@ struct fd_device * fd_device_ref(struct fd_device *dev)
112 112
113static void fd_device_del_impl(struct fd_device *dev) 113static void fd_device_del_impl(struct fd_device *dev)
114{ 114{
115 int close_fd = dev->closefd ? dev->fd : -1;
115 fd_bo_cache_cleanup(&dev->bo_cache, 0); 116 fd_bo_cache_cleanup(&dev->bo_cache, 0);
116 drmHashDestroy(dev->handle_table); 117 drmHashDestroy(dev->handle_table);
117 drmHashDestroy(dev->name_table); 118 drmHashDestroy(dev->name_table);
118 dev->funcs->destroy(dev); 119 dev->funcs->destroy(dev);
119 if (dev->closefd) 120 if (close_fd >= 0)
120 close(dev->fd); 121 close(close_fd);
121 free(dev);
122} 122}
123 123
124drm_private void fd_device_del_locked(struct fd_device *dev) 124drm_private void fd_device_del_locked(struct fd_device *dev)