From c9111f8e8cc4a6afe7ab969d9d14bfdb460d0cb9 Mon Sep 17 00:00:00 2001 From: WeebDataHoarder <57538841+WeebDataHoarder@users.noreply.github.com> Date: Wed, 20 Apr 2022 11:04:53 +0200 Subject: [PATCH] Track addition errors will now be logged, added empty queue retry --- api.go | 4 ++++ queue.go | 9 ++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/api.go b/api.go index 5a0dba1..d285daa 100644 --- a/api.go +++ b/api.go @@ -214,6 +214,8 @@ func (a *API) listen() { if err = a.queue.AddTrack(e, false); err == nil { result.Success = true result.QueueId = e.QueueIdentifier + } else { + log.Printf("track addition error: \"%s\"", err) } } } @@ -242,6 +244,8 @@ func (a *API) listen() { if err = a.queue.AddTrack(e, true); err == nil { result.Success = true result.QueueId = e.QueueIdentifier + } else { + log.Printf("track addition error: \"%s\"", err) } } } diff --git a/queue.go b/queue.go index d29e42f..74d45b4 100644 --- a/queue.go +++ b/queue.go @@ -277,7 +277,14 @@ func (q *Queue) AddTrack(entry *QueueTrackEntry, tail bool) error { func (q *Queue) HandleQueue() { if q.audioQueue.GetQueueSize() == 0 { - q.AddTrack(<-q.QueueEmpty, true) + if err := q.AddTrack(<-q.QueueEmpty, true); err != nil { + log.Printf("track addition error: \"%s\"", err) + + //TODO: maybe fail after n tries + time.Sleep(time.Second) + + q.HandleQueue() + } } }