From ab218fa9c8e3a3299f0f73a5629af3efc5843c95 Mon Sep 17 00:00:00 2001 From: Yoink3000 Date: Fri, 19 Apr 2024 02:05:39 +0800 Subject: [PATCH] fix path handling for gallery preview --- javascript/gallery.js | 6 +++--- modules/api/gallery.py | 1 + 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/javascript/gallery.js b/javascript/gallery.js index e53345b76..b3bfcaaa0 100644 --- a/javascript/gallery.js +++ b/javascript/gallery.js @@ -110,8 +110,8 @@ async function delayFetchThumb(fn) { class GalleryFile extends HTMLElement { constructor(folder, file) { super(); - this.folder = decodeURI(folder); - this.name = decodeURI(file); + this.folder = folder; + this.name = file; this.size = 0; this.mtime = 0; this.hash = undefined; @@ -336,7 +336,7 @@ async function fetchFiles(evt) { // fetch file-by-file list over websockets ws.onmessage = (event) => { numFiles++; t1 = performance.now(); - const data = event.data.split('##F##'); + const data = decodeURI(event.data).split('##F##'); if (data[0] === '#END#') { ws.close(); } else { diff --git a/modules/api/gallery.py b/modules/api/gallery.py index 5e51a9c94..9bf795ec9 100644 --- a/modules/api/gallery.py +++ b/modules/api/gallery.py @@ -169,6 +169,7 @@ def register_api(app: FastAPI): # register api numFiles += 1 file = os.path.relpath(f, folder) msg = quote(folder) + '##F##' + quote(file) + msg = msg[:1] + ":" + msg[4:] if msg[1:4] == "%3A" else msg await manager.send(ws, msg) await manager.send(ws, '#END#') t1 = time.time()