fix(plugins): validate cached manifests are an array

This commit is contained in:
Allard 2026-07-19 11:53:10 +08:00 committed by kshitij
parent 050b9533e0
commit 057939c2af
1 changed files with 3 additions and 1 deletions

View File

@ -22,7 +22,9 @@ const MANIFEST_CACHE_KEY = "hermes:plugin-manifests";
function getCachedManifests(): PluginManifest[] | null {
try {
const raw = sessionStorage.getItem(MANIFEST_CACHE_KEY);
return raw ? (JSON.parse(raw) as PluginManifest[]) : null;
if (!raw) return null;
const parsed = JSON.parse(raw);
return Array.isArray(parsed) ? (parsed as PluginManifest[]) : null;
} catch {
return null;
}