summaryrefslogtreecommitdiff
path: root/Services/MediaService.cs
diff options
context:
space:
mode:
authorJake Mannens <jake@asger.xyz>2026-08-15 00:38:13 +1000
committerJake Mannens <jake@asger.xyz>2026-08-21 00:44:41 +1000
commit8eb1197eb34067be768b299853fe6f6260cb3b37 (patch)
treee4da4d2b87febe13ac81e5016c404fdea7c75837 /Services/MediaService.cs
parent83df36087a5037b9bd476973a500e06a36d8b6f3 (diff)
Fixed issue where re-uploaded files weren't considered duplicates
Diffstat (limited to 'Services/MediaService.cs')
-rw-r--r--Services/MediaService.cs6
1 files changed, 5 insertions, 1 deletions
diff --git a/Services/MediaService.cs b/Services/MediaService.cs
index 9974802..1946248 100644
--- a/Services/MediaService.cs
+++ b/Services/MediaService.cs
@@ -213,9 +213,13 @@ public class MediaService : IMediaService {
} else {
var fileHashes = media.UploadedFiles
.Select(uf => GetUploadedFileHash(uf));
+ var guidParsed = Guid.TryParse(fileName.Split(".").First(), out Guid parsedGuid);
// Only add the uploaded file record if it contains new information
+ // and the filename doesn't match the media GUID (the file wasn't
+ // downloaded and re-uploaded).
if(!fileHashes.Contains(GetUploadedFileHash(fileRecord)))
- media.UploadedFiles.Add(fileRecord);
+ if(guidParsed && parsedGuid != media.Guid || !guidParsed)
+ media.UploadedFiles.Add(fileRecord);
// Add new tags if needed
var missingTags = tags
.Where(td => !media.Tags.Select(t => t.TagDefinition.Guid).Contains(td.Guid));