diff --git a/pkg/downloader/aria2/aria2.go b/pkg/downloader/aria2/aria2.go index 8070d4f..01e25da 100644 --- a/pkg/downloader/aria2/aria2.go +++ b/pkg/downloader/aria2/aria2.go @@ -234,9 +234,14 @@ func (a *aria2Client) SetFilesToDownload(ctx context.Context, handle *downloader return fmt.Errorf("cannot get task: %w", err) } - selected := lo.SliceToMap(status.Files, func(item downloader.TaskFile) (int, bool) { - return item.Index, true - }) + selected := lo.SliceToMap( + lo.Filter(status.Files, func(item downloader.TaskFile, _ int) bool { + return item.Selected + }), + func(item downloader.TaskFile) (int, bool) { + return item.Index, true + }, + ) for _, arg := range args { if !arg.Download { delete(selected, arg.Index)