diff options
author | Riley <riley@e926.de> | 2022-05-01 20:52:17 +0200 |
---|---|---|
committer | Riley <riley@e926.de> | 2022-05-01 20:52:17 +0200 |
commit | fbf490c12b79d979bcc8076dde9a332926ad3642 (patch) | |
tree | 97ebb24fa82357d36b0b895d1135ca54f8325edb /content.go | |
parent | f525780f39758fc1e8fd3c6d3365eaba35cf6646 (diff) |
texturePool things regarding to Issue #101
Diffstat (limited to 'content.go')
-rw-r--r-- | content.go | 53 |
1 files changed, 31 insertions, 22 deletions
@@ -496,35 +496,44 @@ func muxRemotes(conns []*contentConn) []string { func muxContent(userName string) (itemDefs []mt.ItemDef, aliases []struct{ Alias, Orig string }, nodeDefs []mt.NodeDef, p0Map param0Map, p0SrvMap param0SrvMap, media []mediaFile, remotes []string, err error) { var conns []*contentConn - for _, srv := range UniquePoolServers() { + for _, pools := range UniquePoolServers() { var addr *net.UDPAddr - addr, err = net.ResolveUDPAddr("udp", srv.Addr) - if err != nil { - return - } + found := false + + for _, srv := range pools { + addr, err = net.ResolveUDPAddr("udp", srv.Addr) + if err != nil { + continue + } - var conn *net.UDPConn - conn, err = net.DialUDP("udp", nil, addr) - if err != nil { - return - } + var conn *net.UDPConn + conn, err = net.DialUDP("udp", nil, addr) + if err != nil { + continue + } - // get prefix of server - var prefix string - if len(srv.TexturePool) == 0 { - prefix = srv.Name - } else { - prefix = srv.TexturePool + // get prefix of server + var prefix string + if len(srv.TexturePool) == 0 { + prefix = srv.Name + } else { + prefix = srv.TexturePool + } + + var cc *contentConn + cc, err = connectContent(conn, srv.Name, userName, prefix) + if err != nil { + continue + } + defer cc.Close() + + found = true + conns = append(conns, cc) } - var cc *contentConn - cc, err = connectContent(conn, srv.Name, userName, prefix) - if err != nil { + if !found { return } - defer cc.Close() - - conns = append(conns, cc) } itemDefs, aliases = muxItemDefs(conns) |