win-capture: Destroy winrt in graphics thread
parent
934a18625e
commit
6209bea371
|
@ -210,11 +210,14 @@ static void *wc_create(obs_data_t *settings, obs_source_t *source)
|
|||
return wc;
|
||||
}
|
||||
|
||||
static void wc_destroy(void *data)
|
||||
static void wc_actual_destroy(void *data)
|
||||
{
|
||||
struct window_capture *wc = data;
|
||||
|
||||
if (wc) {
|
||||
if (wc->capture_winrt) {
|
||||
wc->exports.winrt_capture_free(wc->capture_winrt);
|
||||
}
|
||||
|
||||
obs_enter_graphics();
|
||||
dc_capture_free(&wc->capture);
|
||||
obs_leave_graphics();
|
||||
|
@ -227,7 +230,11 @@ static void wc_destroy(void *data)
|
|||
os_dlclose(wc->winrt_module);
|
||||
|
||||
bfree(wc);
|
||||
}
|
||||
}
|
||||
|
||||
static void wc_destroy(void *data)
|
||||
{
|
||||
obs_queue_task(OBS_TASK_GRAPHICS, wc_actual_destroy, data, false);
|
||||
}
|
||||
|
||||
static void wc_update(void *data, obs_data_t *settings)
|
||||
|
|
Loading…
Reference in New Issue