1
0
mirror of https://github.com/home-assistant/frontend.git synced 2026-05-08 17:28:46 +01:00

Add guard for failed JSON parsing of localStorage entries (#29502)

* Added guard for failed json parsing of selectedTheme key

* deleting corrupted keys and logging
This commit is contained in:
uptimeZERO_
2026-02-10 19:30:28 +00:00
committed by GitHub
parent ccbd9c1f24
commit ee72f4818d
+15 -1
View File
@@ -38,7 +38,21 @@ export function getState(): Partial<StoredHomeAssistant> {
STORED_STATE.forEach((key) => {
const storageItem = window.localStorage.getItem(key);
if (storageItem !== null) {
let value = JSON.parse(storageItem);
let value;
try {
value = JSON.parse(storageItem);
} catch (_err: any) {
// eslint-disable-next-line no-console
console.error(
`Failed to json parse localStorage key: ${key}. Key value: ${storageItem}`,
_err
);
window.localStorage.removeItem(key);
if (key === "selectedTheme") {
state[key] = { theme: "" };
}
return;
}
// selectedTheme went from string to object on 20200718
if (key === "selectedTheme" && typeof value === "string") {
value = { theme: value };