mirror of
https://github.com/octoleo/syncthing.git
synced 2024-12-23 03:18:59 +00:00
Always ignore directory modification time (that stuff is nasty)
This commit is contained in:
parent
0fcc193197
commit
d3085a4127
@ -9,7 +9,6 @@ import (
|
|||||||
"errors"
|
"errors"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"runtime"
|
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/calmh/syncthing/config"
|
"github.com/calmh/syncthing/config"
|
||||||
@ -278,22 +277,6 @@ func (p *puller) fixupDirectories() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if cur.Modified != info.ModTime().Unix() {
|
|
||||||
t := time.Unix(cur.Modified, 0)
|
|
||||||
err := os.Chtimes(path, t, t)
|
|
||||||
if err != nil {
|
|
||||||
if runtime.GOOS != "windows" {
|
|
||||||
// https://code.google.com/p/go/issues/detail?id=8090
|
|
||||||
l.Warnf("Restoring folder modtime: %q: %v", path, err)
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
changed++
|
|
||||||
if debug {
|
|
||||||
l.Debugf("restored dir modtime: %d -> %v", info.ModTime().Unix(), cur)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -373,7 +356,7 @@ func (p *puller) handleBlock(b bqBlock) bool {
|
|||||||
if debug {
|
if debug {
|
||||||
l.Debugf("create dir: %v", f)
|
l.Debugf("create dir: %v", f)
|
||||||
}
|
}
|
||||||
err = os.MkdirAll(path, 0777)
|
err = os.MkdirAll(path, os.FileMode(f.Flags&0777))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
l.Warnf("Create folder: %q: %v", path, err)
|
l.Warnf("Create folder: %q: %v", path, err)
|
||||||
}
|
}
|
||||||
|
@ -166,7 +166,7 @@ func (w *Walker) walkAndHashFiles(fchan chan protocol.FileInfo, ign map[string][
|
|||||||
if w.CurrentFiler != nil {
|
if w.CurrentFiler != nil {
|
||||||
cf := w.CurrentFiler.CurrentFile(rn)
|
cf := w.CurrentFiler.CurrentFile(rn)
|
||||||
permUnchanged := w.IgnorePerms || !protocol.HasPermissionBits(cf.Flags) || PermsEqual(cf.Flags, uint32(info.Mode()))
|
permUnchanged := w.IgnorePerms || !protocol.HasPermissionBits(cf.Flags) || PermsEqual(cf.Flags, uint32(info.Mode()))
|
||||||
if !protocol.IsDeleted(cf.Flags) && cf.Modified == info.ModTime().Unix() && protocol.IsDirectory(cf.Flags) && permUnchanged {
|
if !protocol.IsDeleted(cf.Flags) && protocol.IsDirectory(cf.Flags) && permUnchanged {
|
||||||
if debug {
|
if debug {
|
||||||
l.Debugln("unchanged:", cf)
|
l.Debugln("unchanged:", cf)
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user