From 7dbcc390860bba335658cca86048db66d0bd43d8 Mon Sep 17 00:00:00 2001 From: Davide Tantillo Date: Fri, 2 May 2025 16:50:31 +0200 Subject: [PATCH] Fixes to asset manager ref counter. --- spine-ts/spine-core/src/AssetManagerBase.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/spine-ts/spine-core/src/AssetManagerBase.ts b/spine-ts/spine-core/src/AssetManagerBase.ts index 8997c6f2a..46d05fbf6 100644 --- a/spine-ts/spine-core/src/AssetManagerBase.ts +++ b/spine-ts/spine-core/src/AssetManagerBase.ts @@ -337,6 +337,7 @@ export class AssetManagerBase implements Disposable { if (asset.dispose) asset.dispose(); delete this.assets[path]; delete this.assetsRefCount[path]; + delete this.assetsLoaded[path]; return asset; } @@ -346,6 +347,8 @@ export class AssetManagerBase implements Disposable { if (asset.dispose) asset.dispose(); } this.assets = {}; + this.assetsLoaded = {}; + this.assetsRefCount = {}; } isLoadingComplete (): boolean { @@ -365,10 +368,9 @@ export class AssetManagerBase implements Disposable { } // dispose asset only if it's not used by others - disposeAsset(path: string, a?: string) { + disposeAsset(path: string) { if (--this.assetsRefCount[path] === 0) { - const asset = this.assets[path]; - if (asset.dispose) asset.dispose(); + this.remove(path) } }