Make tracker order in Metainfo.Magnet deterministic
Should fix test failures in CI.
This commit is contained in:
parent
b4fd8ff1b9
commit
80cfe96c8b
|
@ -21,13 +21,14 @@ func (al AnnounceList) OverridesAnnounce(announce string) bool {
|
|||
return false
|
||||
}
|
||||
|
||||
func (al AnnounceList) DistinctValues() (ret map[string]struct{}) {
|
||||
func (al AnnounceList) DistinctValues() (ret []string) {
|
||||
seen := make(map[string]struct{})
|
||||
for _, tier := range al {
|
||||
for _, v := range tier {
|
||||
if ret == nil {
|
||||
ret = make(map[string]struct{})
|
||||
if _, ok := seen[v]; !ok {
|
||||
seen[v] = struct{}{}
|
||||
ret = append(ret, v)
|
||||
}
|
||||
ret[v] = struct{}{}
|
||||
}
|
||||
}
|
||||
return
|
||||
|
|
|
@ -70,7 +70,7 @@ func (mi *MetaInfo) SetDefaults() {
|
|||
|
||||
// Creates a Magnet from a MetaInfo. Optional infohash and parsed info can be provided.
|
||||
func (mi *MetaInfo) Magnet(infoHash *Hash, info *Info) (m Magnet) {
|
||||
for t := range mi.UpvertedAnnounceList().DistinctValues() {
|
||||
for _, t := range mi.UpvertedAnnounceList().DistinctValues() {
|
||||
m.Trackers = append(m.Trackers, t)
|
||||
}
|
||||
if info != nil {
|
||||
|
|
Loading…
Reference in New Issue