diff --git a/libraries/networking/src/DomainHandler.cpp b/libraries/networking/src/DomainHandler.cpp index 74bb411845..afe380528f 100644 --- a/libraries/networking/src/DomainHandler.cpp +++ b/libraries/networking/src/DomainHandler.cpp @@ -49,9 +49,13 @@ void DomainHandler::clearSettings() { _failedSettingsRequests = 0; } -void DomainHandler::reset() { +void DomainHandler::softReset() { clearConnectionInfo(); clearSettings(); +} + +void DomainHandler::hardReset() { + softReset(); _hostname = QString(); _sockAddr.setAddress(QHostAddress::Null); } @@ -59,7 +63,7 @@ void DomainHandler::reset() { void DomainHandler::setSockAddr(const HifiSockAddr& sockAddr, const QString& hostname) { if (_sockAddr != sockAddr) { // we should reset on a sockAddr change - reset(); + hardReset(); // change the sockAddr _sockAddr = sockAddr; } @@ -72,7 +76,7 @@ void DomainHandler::setHostname(const QString& hostname) { if (hostname != _hostname) { // re-set the domain info so that auth information is reloaded - reset(); + hardReset(); int colonIndex = hostname.indexOf(':'); diff --git a/libraries/networking/src/DomainHandler.h b/libraries/networking/src/DomainHandler.h index a2b8e2e307..28433c5455 100644 --- a/libraries/networking/src/DomainHandler.h +++ b/libraries/networking/src/DomainHandler.h @@ -62,6 +62,8 @@ public: void parseDTLSRequirementPacket(const QByteArray& dtlsRequirementPacket); + void softReset(); + private slots: void completedHostnameLookup(const QHostInfo& hostInfo); void settingsRequestFinished(); @@ -73,7 +75,7 @@ signals: void settingsReceiveFail(); private: - void reset(); + void hardReset(); QUuid _uuid; QString _hostname; diff --git a/libraries/networking/src/NodeList.cpp b/libraries/networking/src/NodeList.cpp index 8db8232516..992a168244 100644 --- a/libraries/networking/src/NodeList.cpp +++ b/libraries/networking/src/NodeList.cpp @@ -178,8 +178,7 @@ void NodeList::reset() { setSessionUUID(QUuid()); // clear the domain connection information - _domainHandler.clearConnectionInfo(); - _domainHandler.clearSettings(); + _domainHandler.softReset(); // if we setup the DTLS socket, also disconnect from the DTLS socket readyRead() so it can handle handshaking if (_dtlsSocket) {