Skip to content

Commit d7325ef

Browse files
committed
Don't panic in Kick chat handler
1 parent 316eeac commit d7325ef

2 files changed

Lines changed: 11 additions & 1 deletion

File tree

cmd/streampanel/context.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ func getContext(
5151

5252
ll := xlogrus.DefaultLogrusLogger()
5353
ll.Formatter.(*logrus.TextFormatter).ForceColors = true
54+
ll.ReportCaller = true
5455

5556
logPreHooks := logger.PreHooks{
5657
&observability.LogLevelFilter,

pkg/streamcontrol/kick/kick.go

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,16 @@ func (k *Kick) keepAliveLoop(
134134
t := time.NewTicker(time.Minute)
135135
defer t.Stop()
136136
for {
137-
_, err := k.GetClient().GetLivestreams(k.CloseCtx, gokick.NewLivestreamListFilter().SetBroadcasterUserIDs(int(k.Channel.UserID)))
137+
if k.Channel == nil { // TODO: fix non-atomicity
138+
logger.Warnf(ctx, "channel info is not set, yet")
139+
continue
140+
}
141+
client := k.GetClient()
142+
if client == nil {
143+
logger.Errorf(ctx, "client is not initialized")
144+
continue
145+
}
146+
_, err := client.GetLivestreams(k.CloseCtx, gokick.NewLivestreamListFilter().SetBroadcasterUserIDs(int(k.Channel.UserID)))
138147
if err != nil {
139148
logger.Errorf(ctx, "unable to get my stream status: %v", err)
140149
continue

0 commit comments

Comments
 (0)