From 2e3975e9563724addaf91e3fa7dbdb597d0aa560 Mon Sep 17 00:00:00 2001 From: Simon Frei Date: Fri, 1 May 2020 11:11:38 +0200 Subject: [PATCH] lib/model: Improve errors when deleting dirs (fixes #6575) (#6586) --- lib/model/folder_sendrecv.go | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/model/folder_sendrecv.go b/lib/model/folder_sendrecv.go index bef74c2d3..ed46e9e00 100644 --- a/lib/model/folder_sendrecv.go +++ b/lib/model/folder_sendrecv.go @@ -64,9 +64,10 @@ const retainBits = fs.ModeSetgid | fs.ModeSetuid | fs.ModeSticky var ( activity = newDeviceActivity() errNoDevice = errors.New("peers who had this file went away, or the file has changed while syncing. will retry later") - errDirHasToBeScanned = errors.New("directory contains unexpected files, scheduling scan") - errDirHasIgnored = errors.New("directory contains ignored files (see ignore documentation for (?d) prefix)") - errDirNotEmpty = errors.New("directory is not empty; files within are probably ignored on connected devices only") + errDirPrefix = "directory has been deleted on a remote device but " + errDirHasToBeScanned = errors.New(errDirPrefix + "contains unexpected files, scheduling scan") + errDirHasIgnored = errors.New(errDirPrefix + "contains ignored files (see ignore documentation for (?d) prefix)") + errDirNotEmpty = errors.New(errDirPrefix + "is not empty; the contents are probably ignored on that remote device, but not locally") errNotAvailable = errors.New("no connected device has the required version of this file") errModified = errors.New("file modified but not rescanned; will try again later") errUnexpectedDirOnFileDel = errors.New("encountered directory when trying to remove file/symlink") @@ -783,7 +784,7 @@ func (f *sendReceiveFolder) deleteDir(file protocol.FileInfo, snap *db.Snapshot, }() if err = f.deleteDirOnDisk(file.Name, snap, scanChan); err != nil { - f.newPullError(file.Name, errors.Wrap(err, "delete dir")) + f.newPullError(file.Name, err) return }