parent
6201eebc98
commit
6768daec07
|
@ -198,7 +198,7 @@ func (db *Lowlevel) updateLocalFiles(folder []byte, fs []protocol.FileInfo, meta
|
||||||
blocksHashSame := ok && bytes.Equal(ef.BlocksHash, f.BlocksHash)
|
blocksHashSame := ok && bytes.Equal(ef.BlocksHash, f.BlocksHash)
|
||||||
|
|
||||||
if ok {
|
if ok {
|
||||||
if !ef.IsDirectory() && !ef.IsDeleted() && !ef.IsInvalid() {
|
if len(ef.Blocks) != 0 && !ef.IsInvalid() {
|
||||||
for _, block := range ef.Blocks {
|
for _, block := range ef.Blocks {
|
||||||
keyBuf, err = db.keyer.GenerateBlockMapKey(keyBuf, folder, block.Hash, name)
|
keyBuf, err = db.keyer.GenerateBlockMapKey(keyBuf, folder, block.Hash, name)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -259,7 +259,7 @@ func (db *Lowlevel) updateLocalFiles(folder []byte, fs []protocol.FileInfo, meta
|
||||||
}
|
}
|
||||||
l.Debugf("adding sequence; folder=%q sequence=%v %v", folder, f.Sequence, f.Name)
|
l.Debugf("adding sequence; folder=%q sequence=%v %v", folder, f.Sequence, f.Name)
|
||||||
|
|
||||||
if !f.IsDirectory() && !f.IsDeleted() && !f.IsInvalid() {
|
if len(f.Blocks) != 0 && !f.IsInvalid() {
|
||||||
for i, block := range f.Blocks {
|
for i, block := range f.Blocks {
|
||||||
binary.BigEndian.PutUint32(blockBuf, uint32(i))
|
binary.BigEndian.PutUint32(blockBuf, uint32(i))
|
||||||
keyBuf, err = db.keyer.GenerateBlockMapKey(keyBuf, folder, block.Hash, name)
|
keyBuf, err = db.keyer.GenerateBlockMapKey(keyBuf, folder, block.Hash, name)
|
||||||
|
|
|
@ -585,7 +585,7 @@ func (db *schemaUpdater) updateSchemaTo11(_ int) error {
|
||||||
var putErr error
|
var putErr error
|
||||||
err := t.withHave(folder, protocol.LocalDeviceID[:], nil, true, func(fi FileIntf) bool {
|
err := t.withHave(folder, protocol.LocalDeviceID[:], nil, true, func(fi FileIntf) bool {
|
||||||
f := fi.(FileInfoTruncated)
|
f := fi.(FileInfoTruncated)
|
||||||
if f.IsDirectory() || f.IsDeleted() || f.IsInvalid() || f.BlocksHash == nil {
|
if f.IsDirectory() || f.IsDeleted() || f.IsSymlink() || f.IsInvalid() || f.BlocksHash == nil {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -623,6 +623,10 @@ func (f *folder) scanSubdirs(subDirs []string) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (f *folder) findRename(snap *db.Snapshot, mtimefs fs.Filesystem, file protocol.FileInfo) (protocol.FileInfo, bool) {
|
func (f *folder) findRename(snap *db.Snapshot, mtimefs fs.Filesystem, file protocol.FileInfo) (protocol.FileInfo, bool) {
|
||||||
|
if len(file.Blocks) == 0 {
|
||||||
|
return protocol.FileInfo{}, false
|
||||||
|
}
|
||||||
|
|
||||||
found := false
|
found := false
|
||||||
nf := protocol.FileInfo{}
|
nf := protocol.FileInfo{}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue