fix(gateway): close Phase 3C audit gaps

This commit is contained in:
sechmachine
2026-07-30 01:46:00 +07:00
parent 040ca73ce9
commit d3852d15f3
23 changed files with 1619 additions and 219 deletions
+8 -1
View File
@@ -186,6 +186,7 @@ const (
ProviderEventTerminated ProviderEventKind = iota + 1
ProviderEventRumble
ProviderEventHDR
ProviderEventDisconnected
)
type ProviderEvent struct {
@@ -563,12 +564,17 @@ func (s *fakeSession) Terminate(ctx context.Context) error {
s.mu.Unlock()
return nil
}
disconnected := s.state.State == ProviderStateDisconnected
s.state.State = ProviderStateTerminating
s.closeOnce.Do(func() {
close(s.video)
close(s.audio)
})
s.state.State = ProviderStateTerminated
if disconnected {
s.state.State = ProviderStateDisconnected
} else {
s.state.State = ProviderStateTerminated
}
s.mu.Unlock()
return nil
}
@@ -587,6 +593,7 @@ func (s *fakeSession) Disconnect() {
s.mu.Lock()
s.state.State = ProviderStateDisconnected
s.mu.Unlock()
s.EmitEvent(ProviderEvent{Kind: ProviderEventDisconnected})
}
func (s *fakeSession) ReleaseCount() int {