Fix potentially nil access in buffer (#1374)

This commit is contained in:
David Zhao
2023-02-02 14:56:07 -08:00
committed by GitHub
parent be4764b93b
commit 15edd4d86e

View File

@@ -705,11 +705,16 @@ func (w *WebRTCReceiver) GetRTCPSenderReportDataExt(layer int32) *buffer.RTCPSen
w.bufferMu.RLock()
defer w.bufferMu.RUnlock()
if layer == InvalidLayerSpatial || int(layer) >= len(w.buffers) {
if layer == InvalidLayerSpatial {
return nil
}
return w.buffers[layer].GetSenderReportDataExt()
buffer := w.getBufferLocked(layer)
if buffer == nil {
return nil
}
return buffer.GetSenderReportDataExt()
}
func (w *WebRTCReceiver) GetReferenceLayerRTPTimestamp(ts uint32, layer int32, referenceLayer int32) (uint32, error) {