From 86d8fe3a51b62f62025ea4487e5cc7060d065f58 Mon Sep 17 00:00:00 2001 From: Daniel Sanchez Date: Mon, 26 Apr 2021 17:37:27 +0200 Subject: [PATCH] Fix load safe tokens when safe is in store before v3.5.0 --- src/routes/safe/container/selector.ts | 34 +++++++++++++++++---------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/src/routes/safe/container/selector.ts b/src/routes/safe/container/selector.ts index 9f267525..502e7671 100644 --- a/src/routes/safe/container/selector.ts +++ b/src/routes/safe/container/selector.ts @@ -1,3 +1,4 @@ +import * as Sentry from '@sentry/react' import { List } from 'immutable' import { createSelector } from 'reselect' @@ -31,24 +32,31 @@ export const extendedSafeTokensSelector = createSelector( (safeBalances, tokensList, ethAsToken): List => { const extendedTokens: Array = [] - safeBalances.forEach((safeBalance) => { - const tokenAddress = safeBalance.tokenAddress + try { + safeBalances.forEach((safeBalance) => { + const tokenAddress = safeBalance.tokenAddress - if (!tokenAddress) { - return - } + if (!tokenAddress) { + return + } - const baseToken = sameAddress(tokenAddress, ethAsToken?.address) ? ethAsToken : tokensList.get(tokenAddress) + const baseToken = sameAddress(tokenAddress, ethAsToken?.address) ? ethAsToken : tokensList.get(tokenAddress) - if (!baseToken) { - return - } + if (!baseToken) { + return + } - const token = baseToken.set('balance', safeBalance) - extendedTokens.push(token) - }) + const token = baseToken.set('balance', safeBalance) + extendedTokens.push(token) + }) - return List(extendedTokens) + return List(extendedTokens) + } catch (e) { + Sentry.captureMessage( + 'There was an error loading `safeBalances` in `extendedSafeTokensSelector`, probably safe loaded prior to v3.5.0', + ) + return List([]) + } }, )