wined3d: Send GL context destruction through the command stream.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Henri Verbeet 2017-02-16 00:58:56 +01:00 committed by Alexandre Julliard
parent 392213efb2
commit 15bdcb407d
1 changed files with 7 additions and 1 deletions

View File

@ -945,9 +945,10 @@ static void device_init_swapchain_state(struct wined3d_device *device, struct wi
wined3d_device_set_render_state(device, WINED3D_RS_ZENABLE, ds_enable); wined3d_device_set_render_state(device, WINED3D_RS_ZENABLE, ds_enable);
} }
static void wined3d_device_delete_opengl_contexts(struct wined3d_device *device) static void wined3d_device_delete_opengl_contexts_cs(void *object)
{ {
struct wined3d_resource *resource, *cursor; struct wined3d_resource *resource, *cursor;
struct wined3d_device *device = object;
struct wined3d_context *context; struct wined3d_context *context;
struct wined3d_shader *shader; struct wined3d_shader *shader;
@ -978,6 +979,11 @@ static void wined3d_device_delete_opengl_contexts(struct wined3d_device *device)
} }
} }
static void wined3d_device_delete_opengl_contexts(struct wined3d_device *device)
{
wined3d_cs_destroy_object(device->cs, wined3d_device_delete_opengl_contexts_cs, device);
}
static HRESULT create_primary_opengl_context(struct wined3d_device *device, struct wined3d_swapchain *swapchain) static HRESULT create_primary_opengl_context(struct wined3d_device *device, struct wined3d_swapchain *swapchain)
{ {
struct wined3d_context *context; struct wined3d_context *context;