Release v1.5.96
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
00fae5cadd
commit
27833615b7
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "real-debrid-downloader",
|
||||
"version": "1.5.95",
|
||||
"version": "1.5.96",
|
||||
"description": "Real-Debrid Downloader Desktop (Electron + React + TypeScript)",
|
||||
"main": "build/main/main/main.js",
|
||||
"author": "Sucukdeluxe",
|
||||
|
||||
@ -5686,13 +5686,19 @@ export class DownloadManager extends EventEmitter {
|
||||
return ready;
|
||||
}
|
||||
|
||||
// Build lookup: pathKey → item status for pending items
|
||||
// Build lookup: pathKey → item status for pending items.
|
||||
// Also map by filename (resolved against outputDir) so items without
|
||||
// targetPath (never started) are still found by the disk-fallback check.
|
||||
const pendingItemStatus = new Map<string, string>();
|
||||
for (const itemId of pkg.itemIds) {
|
||||
const item = this.session.items[itemId];
|
||||
if (item && item.targetPath && item.status !== "completed") {
|
||||
if (!item || item.status === "completed") continue;
|
||||
if (item.targetPath) {
|
||||
pendingItemStatus.set(pathKey(item.targetPath), item.status);
|
||||
}
|
||||
if (item.fileName && pkg.outputDir) {
|
||||
pendingItemStatus.set(pathKey(path.join(pkg.outputDir, item.fileName)), item.status);
|
||||
}
|
||||
}
|
||||
|
||||
for (const candidate of candidates) {
|
||||
@ -5811,8 +5817,11 @@ export class DownloadManager extends EventEmitter {
|
||||
};
|
||||
const hybridItems = completedItems.filter(isHybridItem);
|
||||
|
||||
// Resolve archive items dynamically from ALL package items (not just
|
||||
// the stale completedItems snapshot) so items that complete during
|
||||
// extraction are included and get the correct "Done" label.
|
||||
const resolveArchiveItems = (archiveName: string): DownloadItem[] =>
|
||||
resolveArchiveItemsFromList(archiveName, hybridItems);
|
||||
resolveArchiveItemsFromList(archiveName, items);
|
||||
|
||||
// Track multiple active archives for parallel hybrid extraction
|
||||
const activeHybridArchiveMap = new Map<string, DownloadItem[]>();
|
||||
|
||||
@ -662,14 +662,14 @@ export function App(): ReactElement {
|
||||
|
||||
const itemCount = Object.keys(state.session.items).length;
|
||||
let flushDelay = itemCount >= 1500
|
||||
? 1200
|
||||
? 900
|
||||
: itemCount >= 700
|
||||
? 920
|
||||
? 650
|
||||
: itemCount >= 250
|
||||
? 640
|
||||
: 300;
|
||||
? 400
|
||||
: 150;
|
||||
if (!state.session.running) {
|
||||
flushDelay = Math.min(flushDelay, 320);
|
||||
flushDelay = Math.min(flushDelay, 200);
|
||||
}
|
||||
if (activeTabRef.current !== "downloads") {
|
||||
flushDelay = Math.max(flushDelay, 800);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user