From 85dcd5a5b9429676e8b760bdb10cf3970f0b3a25 Mon Sep 17 00:00:00 2001 From: Nick Fisher Date: Wed, 25 Sep 2024 21:50:31 +0800 Subject: [PATCH] fix!: (web/wasm) free pick callbacks on dispose --- .../viewer/web_wasm/src/thermion_viewer_wasm.dart | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/thermion_dart/lib/thermion_dart/viewer/web_wasm/src/thermion_viewer_wasm.dart b/thermion_dart/lib/thermion_dart/viewer/web_wasm/src/thermion_viewer_wasm.dart index 8eba0a94..43a876f6 100644 --- a/thermion_dart/lib/thermion_dart/viewer/web_wasm/src/thermion_viewer_wasm.dart +++ b/thermion_dart/lib/thermion_dart/viewer/web_wasm/src/thermion_viewer_wasm.dart @@ -127,8 +127,6 @@ class ThermionViewerWasm implements ThermionViewer { _pickCallbackPtr = _module!.addFunction(_onPickCallback.toJS, "viii"); _pickGizmoCallbackPtr = _module!.addFunction(_onPickGizmoCallback.toJS, "viii"); - // _module!.removeFunction(_pickCallbackPtr); - // _module!.removeFunction(_pickGizmoCallbackPtr); var gizmoOut = _module!._malloc(4 * 4); @@ -237,6 +235,8 @@ class ThermionViewerWasm implements ThermionViewer { await callback.call(); } _onDispose.clear(); + _module!.removeFunction(_pickCallbackPtr); + _module!.removeFunction(_pickGizmoCallbackPtr); } void _destroyViewer() {