From bfc4f19c74a6469415ee4e42ea2f1887f1c0b175 Mon Sep 17 00:00:00 2001 From: Raja Subramanian Date: Tue, 28 Nov 2023 22:28:30 +0530 Subject: [PATCH] Guard against bad quality in trackInfo (#2271) --- pkg/sfu/buffer/videolayerutils.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkg/sfu/buffer/videolayerutils.go b/pkg/sfu/buffer/videolayerutils.go index b18c83d84..9028283fc 100644 --- a/pkg/sfu/buffer/videolayerutils.go +++ b/pkg/sfu/buffer/videolayerutils.go @@ -32,7 +32,12 @@ func LayerPresenceFromTrackInfo(trackInfo *livekit.TrackInfo) *[livekit.VideoQua var layerPresence [livekit.VideoQuality_HIGH + 1]bool for _, layer := range trackInfo.Layers { - layerPresence[layer.Quality] = true + // WARNING: comparing protobuf enum + if layer.Quality <= livekit.VideoQuality_HIGH { + layerPresence[layer.Quality] = true + } else { + logger.Warnw("unexpected quality in track info", nil, "trackInfo", logger.Proto(trackInfo)) + } } return &layerPresence