From b2bc3e18fda81958197bd4d043a0ca830fd6aaf0 Mon Sep 17 00:00:00 2001 From: zarazaex69 Date: Thu, 9 Apr 2026 18:34:19 +0300 Subject: [PATCH] fix(peer): Add backpressure handling to prevent buffer overflow --- internal/telemost/peer.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/internal/telemost/peer.go b/internal/telemost/peer.go index 4d2613e..160f622 100644 --- a/internal/telemost/peer.go +++ b/internal/telemost/peer.go @@ -173,6 +173,11 @@ func (p *Peer) Send(data []byte) error { if p.dc == nil || p.dc.ReadyState() != webrtc.DataChannelStateOpen { return fmt.Errorf("datachannel not ready") } + + for p.dc.BufferedAmount() > 1024*1024 { + time.Sleep(1 * time.Millisecond) + } + return p.dc.Send(data) }