This commit is contained in:
Jakob Borg 2023-05-24 21:12:15 +02:00
parent 6207609fb6
commit 962fedc378
2 changed files with 9 additions and 9 deletions

View File

@ -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 }

View File

@ -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 {