From 4f76652eff5868c17e56ad40e04fb8959fac340e Mon Sep 17 00:00:00 2001 From: Mitchell McCaffrey Date: Thu, 21 Jan 2021 13:51:23 +1100 Subject: [PATCH] Added null checks to asset manifest --- src/network/NetworkedMapAndTokens.js | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/network/NetworkedMapAndTokens.js b/src/network/NetworkedMapAndTokens.js index e056dc8..a27ee9c 100644 --- a/src/network/NetworkedMapAndTokens.js +++ b/src/network/NetworkedMapAndTokens.js @@ -50,7 +50,7 @@ function NetworkedMapAndTokens({ session }) { "mapId" ); const [assetManifest, setAssetManifest] = useNetworkedState( - [], + null, session, "manifest", 100, @@ -94,15 +94,17 @@ function NetworkedMapAndTokens({ session }) { function addAssetIfNeeded(asset) { // Asset needs updating - const exists = assetManifest.some((oldAsset) => + const exists = assetManifest?.some((oldAsset) => compareAssets(oldAsset, asset) ); - const needsUpdate = assetManifest.some((oldAsset) => + const needsUpdate = assetManifest?.some((oldAsset) => assetNeedsUpdate(oldAsset, asset) ); if (!exists || needsUpdate) { setAssetManifest((prevAssets) => [ - ...prevAssets.filter((prevAsset) => !compareAssets(prevAsset, asset)), + ...(prevAssets || []).filter( + (prevAsset) => !compareAssets(prevAsset, asset) + ), asset, ]); } @@ -286,7 +288,7 @@ function NetworkedMapAndTokens({ session }) { } function handleMapTokenStateChange(change) { - if (currentMapState === null) { + if (!currentMapState) { return; } setCurrentMapState((prevMapState) => ({