예제 #1
0
파일: main.go 프로젝트: philips/syncthing
func loadIndex(m *Model) {
	fname := fmt.Sprintf("%x.idx.gz", sha1.Sum([]byte(m.Dir())))
	idxf, err := os.Open(path.Join(opts.ConfDir, fname))
	if err != nil {
		return
	}
	defer idxf.Close()

	gzr, err := gzip.NewReader(idxf)
	if err != nil {
		return
	}
	defer gzr.Close()

	idx, err := protocol.ReadIndex(gzr)
	if err != nil {
		return
	}
	m.SeedIndex(idx)
}
예제 #2
0
파일: main.go 프로젝트: JoeX2/syncthing
func loadIndex(m *model.Model) {
	name := m.RepoID() + ".idx.gz"
	idxf, err := os.Open(path.Join(opts.ConfDir, name))
	if err != nil {
		return
	}
	defer idxf.Close()

	gzr, err := gzip.NewReader(idxf)
	if err != nil {
		return
	}
	defer gzr.Close()

	idx, err := protocol.ReadIndex(gzr)
	if err != nil {
		return
	}
	m.SeedLocal(idx)
}