Browse Source

unregister window events before deleting wasm view

Signed-off-by: falkTX <falktx@falktx.com>
pull/417/head
falkTX 2 years ago
parent
commit
1eba48d4d2
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
1 changed files with 5 additions and 0 deletions
  1. +5
    -0
      dgl/src/pugl-extra/wasm.c

+ 5
- 0
dgl/src/pugl-extra/wasm.c View File

@@ -735,6 +735,11 @@ puglFreeViewInternals(PuglView* const view)
printf("DONE: %s %d\n", __func__, __LINE__);
if (view && view->impl) {
if (view->backend) {
// unregister the window events, to make sure no callbacks to old views are triggered
emscripten_set_pointerlockchange_callback(EMSCRIPTEN_EVENT_TARGET_WINDOW, NULL, false, NULL);
emscripten_set_resize_callback(EMSCRIPTEN_EVENT_TARGET_WINDOW, NULL, false, NULL);
emscripten_set_fullscreenchange_callback(EMSCRIPTEN_EVENT_TARGET_WINDOW, NULL, false, NULL);
emscripten_set_visibilitychange_callback(NULL, false, NULL);
view->backend->destroy(view);
}
free(view->impl->clipboardData);


Loading…
Cancel
Save