diff options
author | Erik Faye-Lund <erik.faye-lund@collabora.com> | 2019-05-26 10:42:51 +0200 |
---|---|---|
committer | Marge Bot <eric+marge@anholt.net> | 2020-04-02 09:51:58 +0000 |
commit | 99a0864b481eaf3e8c50e6057628779096747333 (patch) | |
tree | de3122a410446619f7cdbf84334fc257aebfd58d /src/gallium/state_trackers/wgl/stw_device.c | |
parent | 098d4cf25f34183f35482ee40d4ef2c4e810269d (diff) |
wgl: move screen-init to a helper
This will be useful in the next commit.
Reviewed-by: Neha Bhende <bhenden@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4307>
Diffstat (limited to 'src/gallium/state_trackers/wgl/stw_device.c')
-rw-r--r-- | src/gallium/state_trackers/wgl/stw_device.c | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/src/gallium/state_trackers/wgl/stw_device.c b/src/gallium/state_trackers/wgl/stw_device.c index 7c887194b5c..86906ececc0 100644 --- a/src/gallium/state_trackers/wgl/stw_device.c +++ b/src/gallium/state_trackers/wgl/stw_device.c @@ -80,12 +80,28 @@ get_refresh_rate(void) } } +static bool +init_screen(const struct stw_winsys *stw_winsys) +{ + struct pipe_screen *screen = stw_winsys->create_screen(); + if (!screen) + return false; + + if (stw_winsys->get_adapter_luid) + stw_winsys->get_adapter_luid(screen, &stw_dev->AdapterLuid); + + stw_dev->smapi->screen = screen; + stw_dev->screen = screen; + + stw_dev->max_2d_length = screen->get_param(screen, + PIPE_CAP_MAX_TEXTURE_2D_SIZE); + return true; +} boolean stw_init(const struct stw_winsys *stw_winsys) { static struct stw_device stw_dev_storage; - struct pipe_screen *screen; debug_disable_error_message_boxes(); @@ -107,19 +123,10 @@ stw_init(const struct stw_winsys *stw_winsys) if (!stw_dev->stapi || !stw_dev->smapi) goto error1; - screen = stw_winsys->create_screen(); - if (!screen) - goto error1; - - if (stw_winsys->get_adapter_luid) - stw_winsys->get_adapter_luid(screen, &stw_dev->AdapterLuid); - - stw_dev->smapi->screen = screen; stw_dev->smapi->get_param = stw_get_param; - stw_dev->screen = screen; - stw_dev->max_2d_length = screen->get_param(screen, - PIPE_CAP_MAX_TEXTURE_2D_SIZE); + if (!init_screen(stw_winsys)) + goto error1; InitializeCriticalSection(&stw_dev->ctx_mutex); InitializeCriticalSection(&stw_dev->fb_mutex); |