From a274f5ae8bb36a4bcd040ed2855a189887aedd96 Mon Sep 17 00:00:00 2001 From: bggRGjQaUbCoE Date: Sun, 24 Aug 2025 09:40:07 +0800 Subject: [PATCH] opt live Signed-off-by: bggRGjQaUbCoE --- lib/tcp/live.dart | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/tcp/live.dart b/lib/tcp/live.dart index 3578a4925..1d6ef07e9 100644 --- a/lib/tcp/live.dart +++ b/lib/tcp/live.dart @@ -244,6 +244,8 @@ class LiveMessageStream { } } }, + onDone: close, + onError: (_) => close(), ); _channel?.sink.add(authPackage.marshal()); } catch (e) { @@ -276,6 +278,7 @@ class LiveMessageStream { Future _heartBeat() async { if (!_active) { if (kDebugMode) logger.i("$logTag init heartBeat inactive $hashCode"); + close(); return; } if (kDebugMode) logger.i("$logTag 直播间信息流认证成功 $hashCode"); @@ -284,6 +287,7 @@ class LiveMessageStream { if (!_active) { if (kDebugMode) logger.i("$logTag heartBeat inactive $hashCode"); timer.cancel(); + close(); return; } if (kDebugMode) logger.i("$logTag heartBeat $hashCode"); @@ -313,8 +317,11 @@ class LiveMessageStream { _active = false; if (kDebugMode) logger.i("$logTag close $hashCode"); _timer?.cancel(); + _timer = null; _eventListeners.clear(); _socketSubscription?.cancel(); + _socketSubscription = null; _channel?.sink.close(); + _channel = null; } }