[TB] fix: extract folder move logic
This commit is contained in:
parent
7d1aeed85c
commit
7a822bef5c
2 changed files with 13 additions and 6 deletions
|
|
@ -362,24 +362,32 @@ public class TorBoxTorrentClient(ILogger<TorBoxTorrentClient> logger, IHttpClien
|
||||||
{
|
{
|
||||||
var innerFolder = Directory.GetDirectories(hashDir)[0];
|
var innerFolder = Directory.GetDirectories(hashDir)[0];
|
||||||
|
|
||||||
if (!Path.GetFileName(innerFolder).Equals(_torrent.Hash, StringComparison.CurrentCultureIgnoreCase))
|
var moveDir = extractPath;
|
||||||
|
if (!extractPath.Contains(_torrent.RdName!))
|
||||||
{
|
{
|
||||||
innerFolder = hashDir;
|
moveDir = hashDir;
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach (var file in Directory.GetFiles(innerFolder))
|
foreach (var file in Directory.GetFiles(innerFolder))
|
||||||
{
|
{
|
||||||
var destFile = Path.Combine(extractPath, Path.GetFileName(file));
|
var destFile = Path.Combine(moveDir, Path.GetFileName(file));
|
||||||
File.Move(file, destFile);
|
File.Move(file, destFile);
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach (var dir in Directory.GetDirectories(innerFolder))
|
foreach (var dir in Directory.GetDirectories(innerFolder))
|
||||||
{
|
{
|
||||||
var destDir = Path.Combine(extractPath, Path.GetFileName(dir));
|
var destDir = Path.Combine(moveDir, Path.GetFileName(dir));
|
||||||
Directory.Move(dir, destDir);
|
Directory.Move(dir, destDir);
|
||||||
}
|
}
|
||||||
|
|
||||||
Directory.Delete(hashDir, true);
|
if (!extractPath.Contains(_torrent.RdName!))
|
||||||
|
{
|
||||||
|
Directory.Delete(innerFolder, true);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Directory.Delete(hashDir, true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,6 @@ using RdtClient.Service.Services.Downloaders;
|
||||||
using System.Collections.Concurrent;
|
using System.Collections.Concurrent;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using System.Web;
|
|
||||||
|
|
||||||
namespace RdtClient.Service.Services;
|
namespace RdtClient.Service.Services;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue