From c68a9d15861f382bd59848163feaa574db3cdc96 Mon Sep 17 00:00:00 2001 From: Przemek Wiech Date: Tue, 9 Jul 2019 00:20:39 +0200 Subject: [PATCH] Do not fail when sessionStorage is not available. Fixes https://github.com/PeWu/topola-webtrees/issues/1 --- src/load_data.ts | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/load_data.ts b/src/load_data.ts index ddc0461..6a4f1cc 100644 --- a/src/load_data.ts +++ b/src/load_data.ts @@ -36,9 +36,13 @@ export async function loadFromUrl( url: string, handleCors: boolean, ): Promise { - const cachedData = sessionStorage.getItem(url); - if (cachedData) { - return JSON.parse(cachedData); + try { + const cachedData = sessionStorage.getItem(url); + if (cachedData) { + return JSON.parse(cachedData); + } + } catch (e) { + console.warn('Failed to load data from session storage: ' + e); } const urlToFetch = handleCors ? 'https://cors-anywhere.herokuapp.com/' + url @@ -58,9 +62,13 @@ export async function loadGedcom( gedcom?: string, images?: Map, ): Promise { - const cachedData = sessionStorage.getItem(hash); - if (cachedData) { - return JSON.parse(cachedData); + try { + const cachedData = sessionStorage.getItem(hash); + if (cachedData) { + return JSON.parse(cachedData); + } + } catch (e) { + console.warn('Failed to load data from session storage: ' + e); } if (!gedcom) { throw new Error('Error loading data. Please upload your file again.');