We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
2 parents f464ecb + 4286d75 commit 421e254Copy full SHA for 421e254
internal/storage/FileServing.go
@@ -570,6 +570,9 @@ func GetFile(id string) (models.File, bool) {
570
if !ok {
571
return emptyResult, false
572
}
573
+ if file.IsPendingForDeletion() {
574
+ return emptyResult, false
575
+ }
576
if IsExpiredFile(file, time.Now().Unix()) {
577
578
internal/storage/FileServing_test.go
@@ -69,6 +69,25 @@ func TestGetFile(t *testing.T) {
69
_, result = GetFile(file.Id)
70
test.IsEqualBool(t, result, false)
71
72
+ // Test pending deletion - file should not be retrievable when pending deletion
73
+ pendingFile := models.File{
74
+ Id: "testpendingdelete",
75
+ Name: "testpendingdelete",
76
+ SHA1: "e017693e4a04a59d0b0f400fe98177fe7ee13cf7",
77
+ UnlimitedDownloads: true,
78
+ UnlimitedTime: true,
79
+ PendingDeletion: time.Now().Add(time.Hour).Unix(),
80
81
+ database.SaveMetaData(pendingFile)
82
+ _, result = GetFile(pendingFile.Id)
83
+ test.IsEqualBool(t, result, false)
84
+ // Clean up - cancel pending deletion to allow normal retrieval
85
+ pendingFile.PendingDeletion = 0
86
87
88
+ test.IsEqualBool(t, result, true)
89
+ // Clean up test data
90
+ database.DeleteMetaData(pendingFile.Id)
91
92
93
func TestGetEncInfoFromExistingFile(t *testing.T) {
0 commit comments