Do not import files that are already in the repository.

This commit is contained in:
2025-07-31 04:09:13 +01:00
parent 5265ad4ef8
commit 2942c6dfc8
3 changed files with 14 additions and 0 deletions

View File

@@ -327,6 +327,9 @@ public partial class ImportRoms : ComponentBase
if(!archiveImporter.IsCrcInDb(reader.Entry.Crc) && KnownOnlyChecked) continue;
// Do not import files that are already in the repository
if(archiveImporter.IsInRepo(reader.Entry.Crc)) continue;
var worker = new FileImporter(_ctx,
_newFiles,
_newDisks,

View File

@@ -556,6 +556,14 @@ public sealed class FileImporter
}
}
public bool IsInRepo(long crc32)
{
lock(DbLock)
{
return _ctx.Files.Any(f => f.Crc32 == crc32.ToString("x8") && f.IsInRepo);
}
}
public void ImportAndHashRom(Stream stream, string filename, string tempPath, long size)
{
try

View File

@@ -410,6 +410,9 @@ public sealed partial class ImportRomFolderViewModel : ViewModelBase
if(!archiveImporter.IsCrcInDb(reader.Entry.Crc) && KnownOnlyChecked) continue;
// Do not import files that are already in the repository
if(archiveImporter.IsInRepo(reader.Entry.Crc)) continue;
var model = new RomImporter
{
Filename = Path.GetFileName(reader.Entry.Key),