From 12600792b1c5757806a67bda1b4164ff7b5c5a30 Mon Sep 17 00:00:00 2001 From: Rob Emery Date: Wed, 1 Jan 2025 20:20:20 +0000 Subject: [PATCH] Runs without crashing now --- dlna/dlnaserver.go | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/dlna/dlnaserver.go b/dlna/dlnaserver.go index 9e96c65d1..cf5f94ab6 100644 --- a/dlna/dlnaserver.go +++ b/dlna/dlnaserver.go @@ -60,7 +60,21 @@ func New(ds model.DataStore, broker events.Broker) *DLNAServer { } // Run starts the server with the given address, and if specified, with TLS enabled. -func (s *DLNAServer) Run(ctx context.Context, addr string, port int, tlsCert string, tlsKey string) error { +func (s *DLNAServer) Run(ctx context.Context, addr string, port int, tlsCert string, tlsKey string) (err error) { + + if s.ssdp.HTTPConn == nil { + network := "tcp4" + if strings.Count(s.ssdp.httpListenAddr, ":") > 1 { + network = "tcp" + } + s.ssdp.HTTPConn, err = net.Listen(network, s.ssdp.httpListenAddr) + if err != nil { + return + } + } + go func() { + s.ssdp.startSSDP() + }() return nil }