+ if(_autoReconnectCount == 0) emit quitRequested(networkId());
+ else {
+ setConnectionState(Network::Reconnecting);
+ if(_autoReconnectCount == network()->autoReconnectRetries()) doAutoReconnect(); // first try is immediate
+ else _autoReconnectTimer.start();
+ }
+}
+
+void NetworkConnection::doAutoReconnect() {
+ if(connectionState() != Network::Disconnected && connectionState() != Network::Reconnecting) {
+ qWarning() << "NetworkConnection::doAutoReconnect(): Cannot reconnect while not being disconnected!";
+ return;
+ }
+ if(_autoReconnectCount > 0) _autoReconnectCount--;
+ connectToIrc(true);