mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 16:08:04 +02:00
glx: deduplicate and move driverName to base glx_screen struct
Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Adam Jackson <ajax@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30524>
This commit is contained in:
parent
d491ec1bf9
commit
3f497c1667
7 changed files with 8 additions and 13 deletions
|
|
@ -589,7 +589,6 @@ dri2DestroyScreen(struct glx_screen *base)
|
|||
/* Free the direct rendering per screen data */
|
||||
driDestroyScreen(psc->driScreen);
|
||||
driDestroyConfigs(psc->driver_configs);
|
||||
free(psc->driverName);
|
||||
close(psc->fd);
|
||||
free(psc);
|
||||
}
|
||||
|
|
@ -876,9 +875,7 @@ dri2BindExtensions(struct dri2_screen *psc, struct glx_display * priv,
|
|||
static char *
|
||||
dri2_get_driver_name(struct glx_screen *glx_screen)
|
||||
{
|
||||
struct dri2_screen *psc = (struct dri2_screen *)glx_screen;
|
||||
|
||||
return psc->driverName;
|
||||
return glx_screen->driverName;
|
||||
}
|
||||
|
||||
static const struct glx_screen_vtable dri2_screen_vtable = {
|
||||
|
|
@ -950,7 +947,7 @@ dri2CreateScreen(int screen, struct glx_display * priv, bool driver_name_is_infe
|
|||
free(driverName);
|
||||
driverName = loader_driverName;
|
||||
}
|
||||
psc->driverName = driverName;
|
||||
psc->base.driverName = driverName;
|
||||
|
||||
extensions = driOpenDriver(driverName, driver_name_is_inferred);
|
||||
if (extensions == NULL)
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ struct dri2_screen {
|
|||
|
||||
const __DRIconfig **driver_configs;
|
||||
|
||||
char *driverName;
|
||||
int fd;
|
||||
|
||||
int show_fps_interval;
|
||||
|
|
|
|||
|
|
@ -779,6 +779,7 @@ dri3_create_screen(int screen, struct glx_display * priv, bool driver_name_is_in
|
|||
ErrorMessageF("No driver found\n");
|
||||
goto handle_error;
|
||||
}
|
||||
psc->base.driverName = driverName;
|
||||
|
||||
if (!strcmp(driverName, "zink") && !debug_get_bool_option("LIBGL_KOPPER_DISABLE", false)) {
|
||||
*return_zink = true;
|
||||
|
|
@ -895,8 +896,6 @@ dri3_create_screen(int screen, struct glx_display * priv, bool driver_name_is_in
|
|||
}
|
||||
}
|
||||
|
||||
free(driverName);
|
||||
|
||||
InfoMessageF("Using DRI3 for screen %d\n", screen);
|
||||
|
||||
psc->prefer_back_buffer_reuse = 1;
|
||||
|
|
@ -931,7 +930,6 @@ handle_error:
|
|||
if (psc->fd_render_gpu >= 0)
|
||||
close(psc->fd_render_gpu);
|
||||
|
||||
free(driverName);
|
||||
glx_screen_cleanup(&psc->base);
|
||||
free(psc);
|
||||
|
||||
|
|
|
|||
|
|
@ -754,7 +754,6 @@ driswDestroyScreen(struct glx_screen *base)
|
|||
driDestroyScreen(psc->driScreen);
|
||||
driDestroyConfigs(psc->driver_configs);
|
||||
psc->driScreen = NULL;
|
||||
free(psc->name);
|
||||
free(psc);
|
||||
}
|
||||
|
||||
|
|
@ -762,7 +761,7 @@ static char *
|
|||
drisw_get_driver_name(struct glx_screen *glx_screen)
|
||||
{
|
||||
struct drisw_screen *psc = (struct drisw_screen *) glx_screen;
|
||||
return strdup(psc->name);
|
||||
return strdup(psc->base.driverName);
|
||||
}
|
||||
|
||||
static const struct glx_screen_vtable drisw_screen_vtable = {
|
||||
|
|
@ -894,7 +893,7 @@ driswCreateScreen(int screen, struct glx_display *priv, enum glx_driver glx_driv
|
|||
extensions = driOpenDriver(driver, driver_name_is_inferred);
|
||||
if (extensions == NULL)
|
||||
goto handle_error;
|
||||
psc->name = strdup(driver);
|
||||
psc->base.driverName = strdup(driver);
|
||||
|
||||
if (glx_driver)
|
||||
loader_extensions_local = kopper_extensions_noshm;
|
||||
|
|
|
|||
|
|
@ -42,7 +42,6 @@ struct drisw_screen
|
|||
|
||||
const __DRIconfig **driver_configs;
|
||||
|
||||
char *name;
|
||||
bool kopper;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -515,6 +515,8 @@ struct glx_screen
|
|||
bool allow_invalid_glx_destroy_window;
|
||||
bool keep_native_window_glx_drawable;
|
||||
|
||||
char *driverName;
|
||||
|
||||
#if defined(GLX_DIRECT_RENDERING) && (!defined(GLX_USE_APPLEGL) || defined(GLX_USE_APPLE))
|
||||
/**
|
||||
* Per screen direct rendering interface functions and data.
|
||||
|
|
|
|||
|
|
@ -742,6 +742,7 @@ glx_screen_cleanup(struct glx_screen *psc)
|
|||
free((char *) psc->serverGLXexts);
|
||||
free((char *) psc->serverGLXvendor);
|
||||
free((char *) psc->serverGLXversion);
|
||||
free(psc->driverName);
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue