mirror of
https://github.com/octoleo/syncthing.git
synced 2024-12-22 10:58:57 +00:00
wip
This commit is contained in:
parent
6207609fb6
commit
962fedc378
@ -7,4 +7,4 @@ package protocol
|
|||||||
|
|
||||||
// Normal Unixes uses NFC and slashes, which is the wire format.
|
// Normal Unixes uses NFC and slashes, which is the wire format.
|
||||||
|
|
||||||
func makeNative(m Model) Model { return m }
|
func makeNative(m contextLessModel) contextLessModel { return m }
|
||||||
|
@ -13,30 +13,30 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
func makeNative(m Model) Model { return nativeModel{m} }
|
func makeNative(m contextLessModel) contextLessModel { return nativeModel{m} }
|
||||||
|
|
||||||
type nativeModel struct {
|
type nativeModel struct {
|
||||||
Model
|
contextLessModel
|
||||||
}
|
}
|
||||||
|
|
||||||
func (m nativeModel) Index(deviceID DeviceID, folder string, files []FileInfo) error {
|
func (m nativeModel) Index(folder string, files []FileInfo) error {
|
||||||
files = fixupFiles(files)
|
files = fixupFiles(files)
|
||||||
return m.Model.Index(deviceID, folder, files)
|
return m.contextLessModel.Index(folder, files)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (m nativeModel) IndexUpdate(deviceID DeviceID, folder string, files []FileInfo) error {
|
func (m nativeModel) IndexUpdate(folder string, files []FileInfo) error {
|
||||||
files = fixupFiles(files)
|
files = fixupFiles(files)
|
||||||
return m.Model.IndexUpdate(deviceID, folder, files)
|
return m.contextLessModel.IndexUpdate(folder, files)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (m nativeModel) Request(deviceID DeviceID, folder, name string, blockNo, size int32, offset int64, hash []byte, weakHash uint32, fromTemporary bool) (RequestResponse, error) {
|
func (m nativeModel) Request(folder, name string, blockNo, size int32, offset int64, hash []byte, weakHash uint32, fromTemporary bool) (RequestResponse, error) {
|
||||||
if strings.Contains(name, `\`) {
|
if strings.Contains(name, `\`) {
|
||||||
l.Warnf("Dropping request for %s, contains invalid path separator", name)
|
l.Warnf("Dropping request for %s, contains invalid path separator", name)
|
||||||
return nil, ErrNoSuchFile
|
return nil, ErrNoSuchFile
|
||||||
}
|
}
|
||||||
|
|
||||||
name = filepath.FromSlash(name)
|
name = filepath.FromSlash(name)
|
||||||
return m.Model.Request(deviceID, folder, name, blockNo, size, offset, hash, weakHash, fromTemporary)
|
return m.contextLessModel.Request(folder, name, blockNo, size, offset, hash, weakHash, fromTemporary)
|
||||||
}
|
}
|
||||||
|
|
||||||
func fixupFiles(files []FileInfo) []FileInfo {
|
func fixupFiles(files []FileInfo) []FileInfo {
|
||||||
|
Loading…
Reference in New Issue
Block a user