From dba93e534198558708ccf09f72d023b020ad24c2 Mon Sep 17 00:00:00 2001 From: aler9 <46489434+aler9@users.noreply.github.com> Date: Wed, 6 Jan 2021 20:50:56 +0100 Subject: [PATCH] ServerConn: forbid Play and Record if no tracks have been setup --- serverconn.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/serverconn.go b/serverconn.go index 1293b620..d7091ecb 100644 --- a/serverconn.go +++ b/serverconn.go @@ -513,6 +513,12 @@ func (sc *ServerConn) handleRequest(req *base.Request) (*base.Response, error) { }, err } + if len(sc.tracks) == 0 { + return &base.Response{ + StatusCode: base.StatusBadRequest, + }, fmt.Errorf("no tracks have been setup") + } + res, err := sc.readHandlers.OnPlay(req) if res.StatusCode == 200 && sc.state != ServerConnStatePlay { @@ -534,6 +540,12 @@ func (sc *ServerConn) handleRequest(req *base.Request) (*base.Response, error) { }, err } + if len(sc.tracks) == 0 { + return &base.Response{ + StatusCode: base.StatusBadRequest, + }, fmt.Errorf("no tracks have been setup") + } + res, err := sc.readHandlers.OnRecord(req) if res.StatusCode == 200 {