From c661cbaf4686b4fbc5de775d3f8550232861f65c Mon Sep 17 00:00:00 2001 From: Mikei386 <44135113+Mikei386@users.noreply.github.com> Date: Tue, 23 Jun 2026 21:50:34 +0200 Subject: [PATCH] Confirm raw upload responses --- build-plugin.sh | 2 +- packages/u-navigator-2026.06.23.r046.tgz | Bin 32366 -> 0 bytes packages/u-navigator-2026.06.23.r047.tgz | Bin 0 -> 32510 bytes .../emhttp/plugins/u-navigator/api/upload.php | 18 ++++---------- server/public/app.js | 22 +++++++++++++++++- u-navigator.plg | 4 ++-- 6 files changed, 28 insertions(+), 18 deletions(-) delete mode 100644 packages/u-navigator-2026.06.23.r046.tgz create mode 100644 packages/u-navigator-2026.06.23.r047.tgz diff --git a/build-plugin.sh b/build-plugin.sh index da35fd4..d991b9a 100755 --- a/build-plugin.sh +++ b/build-plugin.sh @@ -2,7 +2,7 @@ set -eu PLUGIN="u-navigator" -VERSION="2026.06.23.r046" +VERSION="2026.06.23.r047" PKG_DIR="packages" WORK_DIR=".plugin-build" PKG_NAME="${PLUGIN}-${VERSION}.tgz" diff --git a/packages/u-navigator-2026.06.23.r046.tgz b/packages/u-navigator-2026.06.23.r046.tgz deleted file mode 100644 index 3fd68bce69abaf27e0b781fefa79ba73c48c6474..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32366 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 diff --git a/packages/u-navigator-2026.06.23.r047.tgz b/packages/u-navigator-2026.06.23.r047.tgz new file mode 100644 index 0000000000000000000000000000000000000000..5d302cf5e67ff70952f74f62fed880096b5d460c GIT binary patch literal 32510 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 Zy-W`f>61R`lRn9w{{cV_OxXa^0suu8P#^#R literal 0 HcmV?d00001 diff --git a/plugin-root/usr/local/emhttp/plugins/u-navigator/api/upload.php b/plugin-root/usr/local/emhttp/plugins/u-navigator/api/upload.php index fe60f78..acc6832 100644 --- a/plugin-root/usr/local/emhttp/plugins/u-navigator/api/upload.php +++ b/plugin-root/usr/local/emhttp/plugins/u-navigator/api/upload.php @@ -10,24 +10,14 @@ if (!is_dir($target['path'])) { if (isset($_GET['relativePath']) || isset($_SERVER['HTTP_X_UNAV_RELATIVE_PATH'])) { $relativeName = (string)($_GET['relativePath'] ?? $_SERVER['HTTP_X_UNAV_RELATIVE_PATH']); $destination = unav_prepare_upload_destination($target['path'], $relativeName); - $input = fopen('php://input', 'rb'); - $output = fopen($destination['path'], 'xb'); - if (!$input || !$output) { - if ($input) { - fclose($input); - } - if ($output) { - fclose($output); - } - unav_error(500, 'Could not open upload stream'); + $bytes = file_put_contents($destination['path'], file_get_contents('php://input'), LOCK_EX); + if ($bytes === false) { + unav_error(500, 'Could not store uploaded file'); } - stream_copy_to_stream($input, $output); - fclose($input); - fclose($output); unav_json([ 'uploaded' => [[ 'name' => $destination['relative'], - 'size' => filesize($destination['path']) ?: 0, + 'size' => $bytes, ]], ], 201); } diff --git a/server/public/app.js b/server/public/app.js index 5cfd2e0..c29d2cd 100644 --- a/server/public/app.js +++ b/server/public/app.js @@ -915,11 +915,31 @@ async function uploadFileList(win, files, targetPath) { } else { recordDebug('csrf.missing', {}); } - await fetchChecked(apiUrl(`upload.php?${params.toString()}`), { + const response = await fetch(apiUrl(`upload.php?${params.toString()}`), { method: 'POST', headers: { 'Content-Type': 'application/octet-stream' }, body: item.file }); + const text = await response.text(); + recordDebug('upload.file.response', { + path: item.path, + status: response.status, + ok: response.ok, + contentType: response.headers.get('content-type'), + body: text.slice(0, 1000) + }); + if (!response.ok) { + throw new Error(text || `${response.status} ${response.statusText}`); + } + let payload; + try { + payload = JSON.parse(text); + } catch (error) { + throw new Error(`Upload lieferte keine JSON-Antwort: ${text.slice(0, 200) || response.headers.get('content-type') || 'leer'}`); + } + if (!payload.uploaded?.length) { + throw new Error('Upload wurde vom Server nicht bestÃĪtigt.'); + } recordDebug('upload.file.done', { path: item.path, index: index + 1, total: uploadItems.length }); } await loadExplorer(win, targetPath); diff --git a/u-navigator.plg b/u-navigator.plg index 030e657..e48cdde 100644 --- a/u-navigator.plg +++ b/u-navigator.plg @@ -1,7 +1,7 @@ - + @@ -24,7 +24,7 @@ https://git.casaderoll.de/michael/Unraid-Navigator/raw/branch/main/packages/&package; -acb81bdc26294c48b2115013cac89015 +3c9e5a641720371ec7cee8bd70a32d8e