fix(trash): retain metadata when permanent deletion fails

This commit is contained in:
eezd committed 2026-10-25 13:20:53 +08:00
1 parent 56145dba72
commit 9aaaf15278
3 files changed
+119 -5

No files matched your search

+3 -2
View File
@@ -748,10 +748,11 @@ func (v *Vault) Restore(id string) (item TrashItem, err error) {
func (v *Vault) Purge(id string) error {
v.mu.Lock()
defer v.mu.Unlock()
if _, err := v.readTrashItem(id); err != nil {
metadata, err := v.readTrashMetadata(id)
if err != nil {
return err
}
return os.RemoveAll(filepath.Join(v.trash, id))
return v.purgeTrashItemLocked(metadata)
}
// ---- 资源 ----