From a6541134e07b26b5659903dfbd7bd3b43413b743 Mon Sep 17 00:00:00 2001 From: Yegor Vialov Date: Thu, 28 Nov 2019 18:33:27 +0000 Subject: [PATCH] Fix compliting alrady completed future --- lib/managers/connection_manager.class.dart | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/managers/connection_manager.class.dart b/lib/managers/connection_manager.class.dart index b13d02f..19d3350 100644 --- a/lib/managers/connection_manager.class.dart +++ b/lib/managers/connection_manager.class.dart @@ -330,12 +330,16 @@ class ConnectionManager { String rawMessage = json.encode(dataObject); if (!isConnected) { _connect().timeout(connectTimeout, onTimeout: (){ - _completer.completeError(HAError("No connection to Home Assistant", actions: [HAErrorAction.reconnect()])); + if (!_completer.isCompleted) { + _completer.completeError(HAError("No connection to Home Assistant", actions: [HAErrorAction.reconnect()])); + } }).then((_) { Logger.d("[Sending] ==> ${auth ? "type="+dataObject['type'] : rawMessage}"); _socket.sink.add(rawMessage); }).catchError((e) { - _completer.completeError(e); + if (!_completer.isCompleted) { + _completer.completeError(e); + } }); } else { Logger.d("[Sending] ==> ${auth ? "type="+dataObject['type'] : rawMessage}");