You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Joystick crash on first release: _animation was declared late final but reassigned in _release(), throwing LateInitializationError. It is now a reassignable late field.
摇杆首次松手崩溃:_animation 被声明为 late final 却在 _release() 中二次赋值,抛 LateInitializationError;现改为可重新赋值的 late 字段。
LiveKit multi-stream subscription revocation: subscribing a second stream overwrote the track-subscription allowlist and revoked the first. Wanted track SIDs are now accumulated per participant and re-granted together.
ResilientSession re-entrant reconnect double scheduling: the _recovering guard was set after await pause(), letting two racing events both schedule a backoff timer. The guard is now taken synchronously before the await.
ResilientSession never emitted RtcConnected: the session's own RtcConnected was suppressed in _onSessionEvent but never re-emitted by ResilientSession, so consumers never learned a link was (re)established. It is now emitted from _establish.
setBackground(false) duplicate resume: when autoResumeAfterReconnect is enabled, _afterReconnect already resumed the gate, yet the foreground path requested a second (orphaned) resume ticket. The foreground path now skips resume in that case.
LanDiscovery.discoverStream early-cancel crash: onCancel touched late discovery/listener fields that were not yet initialized if the stream was cancelled before startDiscovery resolved, throwing LateInitializationError. They are now nullable with null checks.
LanDiscovery.discoverStream 提前取消崩溃:onCancel 访问尚未初始化的 late 字段(流在 startDiscovery 完成前被取消时),抛 LateInitializationError;现改为可空并加空判断。