summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'Swiften/Network/PlatformDomainNameAddressQuery.cpp')
-rw-r--r--Swiften/Network/PlatformDomainNameAddressQuery.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/Swiften/Network/PlatformDomainNameAddressQuery.cpp b/Swiften/Network/PlatformDomainNameAddressQuery.cpp
index ec7e663..91d15b9 100644
--- a/Swiften/Network/PlatformDomainNameAddressQuery.cpp
+++ b/Swiften/Network/PlatformDomainNameAddressQuery.cpp
@@ -13,7 +13,11 @@
namespace Swift {
-PlatformDomainNameAddressQuery::PlatformDomainNameAddressQuery(const std::string& host, EventLoop* eventLoop, PlatformDomainNameResolver* resolver) : PlatformDomainNameQuery(resolver), hostname(host), eventLoop(eventLoop) {
+PlatformDomainNameAddressQuery::PlatformDomainNameAddressQuery(const boost::optional<std::string>& host, EventLoop* eventLoop, PlatformDomainNameResolver* resolver) : PlatformDomainNameQuery(resolver), hostnameValid(false), eventLoop(eventLoop) {
+ if (!!host) {
+ hostname = *host;
+ hostnameValid = true;
+ }
}
void PlatformDomainNameAddressQuery::run() {
@@ -21,6 +25,10 @@ void PlatformDomainNameAddressQuery::run() {
}
void PlatformDomainNameAddressQuery::runBlocking() {
+ if (!hostnameValid) {
+ emitError();
+ return;
+ }
//std::cout << "PlatformDomainNameResolver::doRun()" << std::endl;
boost::asio::ip::tcp::resolver resolver(ioService);
boost::asio::ip::tcp::resolver::query query(hostname, "5222");