State is disconnected, not invalid

xmppftw created

Change summary

tokio-xmpp/src/client/async_client.rs | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

Detailed changes

tokio-xmpp/src/client/async_client.rs 🔗

@@ -133,7 +133,10 @@ impl<C: ServerConnector> Stream for Client<C> {
                 self.state = ClientState::Connecting(connect);
                 self.poll_next(cx)
             }
-            ClientState::Disconnected => Poll::Ready(None),
+            ClientState::Disconnected => {
+                self.state = ClientState::Disconnected;
+                Poll::Pending
+            }
             ClientState::Connecting(mut connect) => match Pin::new(&mut connect).poll(cx) {
                 Poll::Ready(Ok(Ok(stream))) => {
                     let bound_jid = stream.jid.clone();