aboutsummaryrefslogtreecommitdiff
path: root/courses.go
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--courses.go10
1 files changed, 9 insertions, 1 deletions
diff --git a/courses.go b/courses.go
index 781f69a..fb0161d 100644
--- a/courses.go
+++ b/courses.go
@@ -23,6 +23,7 @@ package main
import (
"context"
"fmt"
+ "log/slog"
"sync"
"sync/atomic"
@@ -140,7 +141,14 @@ func (course *courseT) decrementSelectedAndPropagate(
defer course.SelectedLock.Unlock()
atomic.AddUint32(&course.Selected, ^uint32(0))
}()
- go propagateSelectedUpdate(course)
+ go func() {
+ defer func() {
+ if e := recover(); e != nil {
+ slog.Error("panic", "arg", e)
+ }
+ }()
+ propagateSelectedUpdate(course)
+ }()
err := sendSelectedUpdate(ctx, conn, course.ID)
if err != nil {
return wrapError(