Fix download.bin filename flickering during unrestrict
Build and Release / build (push) Has been cancelled

Keep existing good filename when debrid API returns "download.bin"
or opaque name. Only overwrite item.fileName if the resolved name
is actually better (not opaque, not download.bin).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Sucukdeluxe
2026-03-02 10:43:29 +01:00
co-authored by Claude Opus 4.6
parent 13ff41aa95
commit ca05fa184d
2 changed files with 9 additions and 2 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "real-debrid-downloader", "name": "real-debrid-downloader",
"version": "1.4.78", "version": "1.4.79",
"description": "Real-Debrid Downloader Desktop (Electron + React + TypeScript)", "description": "Real-Debrid Downloader Desktop (Electron + React + TypeScript)",
"main": "build/main/main/main.js", "main": "build/main/main/main.js",
"author": "Sucukdeluxe", "author": "Sucukdeluxe",
+8 -1
View File
@@ -3346,7 +3346,14 @@ export class DownloadManager extends EventEmitter {
} }
item.provider = unrestricted.provider; item.provider = unrestricted.provider;
item.retries += unrestricted.retriesUsed; item.retries += unrestricted.retriesUsed;
item.fileName = sanitizeFilename(unrestricted.fileName || filenameFromUrl(item.url)); const resolvedName = sanitizeFilename(unrestricted.fileName || filenameFromUrl(item.url));
// Only overwrite fileName if the resolved name is better (not "download.bin" / opaque)
if (resolvedName && !looksLikeOpaqueFilename(resolvedName) && resolvedName.toLowerCase() !== "download.bin") {
item.fileName = resolvedName;
} else if (looksLikeOpaqueFilename(item.fileName)) {
// Current name is also opaque, use whatever we got
item.fileName = resolvedName;
}
try { try {
fs.mkdirSync(pkg.outputDir, { recursive: true }); fs.mkdirSync(pkg.outputDir, { recursive: true });
} catch (mkdirError) { } catch (mkdirError) {