diff options
Diffstat (limited to 'client_conn.go')
-rw-r--r-- | client_conn.go | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/client_conn.go b/client_conn.go index 9b0309f..b334ec8 100644 --- a/client_conn.go +++ b/client_conn.go @@ -450,6 +450,21 @@ func handleClt(cc *clientConn) { } case *mt.ToSrvInit2: cc.itemDefs, cc.aliases, cc.nodeDefs, cc.p0Map, cc.p0SrvMap, cc.media, err = muxContent(cc.name) + if err != nil { + cc.log("<--", err.Error()) + + ack, _ := cc.SendCmd(&mt.ToCltDisco{ + Reason: mt.Custom, + Custom: "Content multiplexing failed.", + }) + + select { + case <-cc.Closed(): + case <-ack: + cc.Close() + } + } + cc.SendCmd(&mt.ToCltItemDefs{ Defs: cc.itemDefs, Aliases: cc.aliases, |