mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-25 02:10:11 +01:00
glx: move base screen destroy to glx_screen_cleanup
Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30619>
This commit is contained in:
parent
b89cf3bbaa
commit
407a9094f7
4 changed files with 2 additions and 21 deletions
|
|
@ -424,8 +424,6 @@ dri2DeinitScreen(struct glx_screen *base)
|
|||
{
|
||||
struct dri2_screen *psc = (struct dri2_screen *) base;
|
||||
|
||||
/* Free the direct rendering per screen data */
|
||||
driDestroyScreen(psc->base.frontend_screen);
|
||||
close(psc->fd);
|
||||
}
|
||||
|
||||
|
|
@ -801,9 +799,6 @@ handle_error:
|
|||
glx_config_destroy_list(configs);
|
||||
if (visuals)
|
||||
glx_config_destroy_list(visuals);
|
||||
if (psc->base.frontend_screen)
|
||||
driDestroyScreen(psc->base.frontend_screen);
|
||||
psc->base.frontend_screen = NULL;
|
||||
if (psc->fd >= 0)
|
||||
close(psc->fd);
|
||||
|
||||
|
|
|
|||
|
|
@ -430,7 +430,6 @@ dri3_deinit_screen(struct glx_screen *base)
|
|||
if (psc->fd_render_gpu != psc->fd_display_gpu)
|
||||
close(psc->fd_display_gpu);
|
||||
loader_dri3_close_screen(psc->driScreenRenderGPU);
|
||||
driDestroyScreen(psc->driScreenRenderGPU);
|
||||
close(psc->fd_render_gpu);
|
||||
}
|
||||
|
||||
|
|
@ -671,9 +670,6 @@ handle_error:
|
|||
glx_config_destroy_list(configs);
|
||||
if (visuals)
|
||||
glx_config_destroy_list(visuals);
|
||||
if (psc->driScreenRenderGPU)
|
||||
driDestroyScreen(psc->driScreenRenderGPU);
|
||||
psc->driScreenRenderGPU = NULL;
|
||||
if (psc->fd_render_gpu != psc->fd_display_gpu && psc->driScreenDisplayGPU)
|
||||
driDestroyScreen(psc->driScreenDisplayGPU);
|
||||
psc->driScreenDisplayGPU = NULL;
|
||||
|
|
|
|||
|
|
@ -563,15 +563,6 @@ drisw_copy_sub_buffer(__GLXDRIdrawable * pdraw,
|
|||
driswCopySubBuffer(pdraw->dri_drawable, x, y, width, height);
|
||||
}
|
||||
|
||||
static void
|
||||
driswDeinitScreen(struct glx_screen *base)
|
||||
{
|
||||
struct drisw_screen *psc = (struct drisw_screen *) base;
|
||||
|
||||
/* Free the direct rendering per screen data */
|
||||
driDestroyScreen(psc->base.frontend_screen);
|
||||
}
|
||||
|
||||
static int
|
||||
check_xshm(Display *dpy)
|
||||
{
|
||||
|
|
@ -691,7 +682,6 @@ driswCreateScreen(int screen, struct glx_display *priv, enum glx_driver glx_driv
|
|||
psp = &psc->vtable;
|
||||
psc->base.driScreen = psp;
|
||||
psc->base.can_EXT_texture_from_pixmap = true;
|
||||
psp->deinitScreen = driswDeinitScreen;
|
||||
psp->createDrawable = driswCreateDrawable;
|
||||
psp->swapBuffers = driswSwapBuffers;
|
||||
psp->bindTexImage = dri_bind_tex_image;
|
||||
|
|
@ -714,8 +704,6 @@ driswCreateScreen(int screen, struct glx_display *priv, enum glx_driver glx_driv
|
|||
glx_config_destroy_list(configs);
|
||||
if (visuals)
|
||||
glx_config_destroy_list(visuals);
|
||||
if (psc->base.frontend_screen)
|
||||
driDestroyScreen(psc->base.frontend_screen);
|
||||
|
||||
glx_screen_cleanup(&psc->base);
|
||||
free(psc);
|
||||
|
|
|
|||
|
|
@ -741,6 +741,8 @@ glx_screen_cleanup(struct glx_screen *psc)
|
|||
}
|
||||
#if defined(GLX_DIRECT_RENDERING) && (!defined(GLX_USE_APPLEGL) || defined(GLX_USE_APPLE))
|
||||
driDestroyConfigs(psc->driver_configs);
|
||||
/* Free the direct rendering per screen data */
|
||||
driDestroyScreen(psc->frontend_screen);
|
||||
#endif
|
||||
free((char *) psc->serverGLXexts);
|
||||
free((char *) psc->serverGLXvendor);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue