diff --git a/lib/model/folder_recvonly.go b/lib/model/folder_recvonly.go index 66a1d0ea2..2973e4c80 100644 --- a/lib/model/folder_recvonly.go +++ b/lib/model/folder_recvonly.go @@ -64,6 +64,8 @@ func newReceiveOnlyFolder(model *model, fset *db.FileSet, ignores *ignore.Matche } func (f *receiveOnlyFolder) Revert() { + l.Infof("Reverting folder %v", f.Description) + f.setState(FolderScanning) defer f.setState(FolderIdle) @@ -89,6 +91,7 @@ func (f *receiveOnlyFolder) Revert() { return true } + fi.LocalFlags &^= protocol.FlagLocalReceiveOnly if len(fi.Version.Counters) == 1 && fi.Version.Counters[0].ID == f.shortID { // We are the only device mentioned in the version vector so the // file must originate here. A revert then means to delete it. @@ -113,7 +116,6 @@ func (f *receiveOnlyFolder) Revert() { // either, so we will not create a conflict copy of our local // changes. fi.Version = protocol.Vector{} - fi.LocalFlags &^= protocol.FlagLocalReceiveOnly } batch = append(batch, fi) diff --git a/lib/model/folder_sendonly.go b/lib/model/folder_sendonly.go index 8b83a94ee..9aaabd7f2 100644 --- a/lib/model/folder_sendonly.go +++ b/lib/model/folder_sendonly.go @@ -97,6 +97,8 @@ func (f *sendOnlyFolder) pull() bool { } func (f *sendOnlyFolder) Override() { + l.Infof("Overriding global state on folder %v", f.Description) + f.setState(FolderScanning) batch := make([]protocol.FileInfo, 0, maxBatchSizeFiles) batchSizeBytes := 0