lib/db: Don't account remote invalid files (fixes #5089) (#5090)

This commit is contained in:
Jakob Borg
2018-07-31 13:00:03 +02:00
committed by Simon Frei
parent adc5bf6604
commit 5cb4a9acf6
2 changed files with 31 additions and 0 deletions

View File

@@ -93,6 +93,11 @@ func (m *metadataTracker) countsPtr(dev protocol.DeviceID, flags uint32) *Counts
// addFile adds a file to the counts, adjusting the sequence number as
// appropriate
func (m *metadataTracker) addFile(dev protocol.DeviceID, f FileIntf) {
if f.IsInvalid() && f.FileLocalFlags() == 0 {
// This is a remote invalid file; it does not count.
return
}
m.mut.Lock()
if flags := f.FileLocalFlags(); flags == 0 {
@@ -130,6 +135,11 @@ func (m *metadataTracker) addFileLocked(dev protocol.DeviceID, flags uint32, f F
// removeFile removes a file from the counts
func (m *metadataTracker) removeFile(dev protocol.DeviceID, f FileIntf) {
if f.IsInvalid() && f.FileLocalFlags() == 0 {
// This is a remote invalid file; it does not count.
return
}
m.mut.Lock()
if flags := f.FileLocalFlags(); flags == 0 {