diff --git a/web/ui/app.js b/web/ui/app.js index ea7ca75..de9be09 100644 --- a/web/ui/app.js +++ b/web/ui/app.js @@ -428,9 +428,13 @@ async function browseISO() { try { const resp = await fetch(`${API}/disk/partitions?iso=${encodeURIComponent(iso)}`) + if (!resp.ok) { + status.textContent = 'HTTP ' + resp.status + return + } const data = await resp.json() - if (data.error) { - status.textContent = data.error + if (!data || data.error) { + status.textContent = (data && data.error) || 'server error' return } status.textContent = data.length + ' partition' + (data.length === 1 ? '' : 's') @@ -454,9 +458,13 @@ async function selectPartition(iso, part) { try { const resp = await fetch(`${API}/disk/volumes?iso=${encodeURIComponent(iso)}&part=${encodeURIComponent(part)}`) + if (!resp.ok) { + volsEl.innerHTML = 'HTTP ' + resp.status + '' + return + } const data = await resp.json() - if (data.error) { - volsEl.innerHTML = '' + data.error + '' + if (!data || data.error) { + volsEl.innerHTML = '' + (data && data.error ? data.error : 'server error') + '' return } if (!Array.isArray(data) || data.length === 0) { @@ -464,7 +472,7 @@ async function selectPartition(iso, part) { return } volsEl.innerHTML = data.map(v => ` -