UrlList: func() []string {
ret := make([]string, 0, len(t.webSeeds))
for url := range t.webSeeds {
- ret = append(ret, string(url))
+ ret = append(ret, unique.Handle[string](url).Value())
}
return ret
}(),
if t.cl.config.DisableWebseeds {
return false
}
- if _, ok := t.webSeeds[webseedUrlKey(url)]; ok {
+ if _, ok := t.webSeeds[webseedUrlKey(unique.Make(url))]; ok {
return false
}
// I don't think Go http supports pipelining requests. However, we can have more ready to go
if t.haveInfo() {
ws.onGotInfo(t.info)
}
- t.webSeeds[webseedUrlKey(url)] = &ws
+ t.webSeeds[webseedUrlKey(unique.Make(url))] = &ws
ws.peer.onNeedUpdateRequests("Torrent.addWebSeed")
return true
}
type (
webseedHostKey string
webseedHostKeyHandle = unique.Handle[webseedHostKey]
- webseedUrlKey string
+ webseedUrlKey unique.Handle[string]
)
/*
// Distinct webseed request data when different offsets are not allowed.
type aprioriWebseedRequestKey struct {
+ url webseedUrlKey
t *Torrent
sliceIndex RequestIndex
- url webseedUrlKey
}
func (me *aprioriWebseedRequestKey) String() string {