diff options
| -rw-r--r-- | Swiften/IDN/PlatformIDNConverter.cpp | 10 | ||||
| -rw-r--r-- | Swiften/IDN/PlatformIDNConverter.h | 6 | ||||
| -rw-r--r-- | Swiften/Network/BoostNetworkFactories.cpp | 7 | ||||
| -rw-r--r-- | Swiften/Network/BoostNetworkFactories.h | 8 |
4 files changed, 17 insertions, 14 deletions
diff --git a/Swiften/IDN/PlatformIDNConverter.cpp b/Swiften/IDN/PlatformIDNConverter.cpp index c6104fb..3564bb9 100644 --- a/Swiften/IDN/PlatformIDNConverter.cpp +++ b/Swiften/IDN/PlatformIDNConverter.cpp | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * Copyright (c) 2012-2018 Isode Limited. | 2 | * Copyright (c) 2012-2019 Isode Limited. |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * See the COPYING file for more information. | 4 | * See the COPYING file for more information. |
| 5 | */ | 5 | */ |
| @@ -13,16 +13,16 @@ | |||
| 13 | 13 | ||
| 14 | namespace Swift { | 14 | namespace Swift { |
| 15 | 15 | ||
| 16 | IDNConverter* PlatformIDNConverter::create() { | 16 | std::unique_ptr<IDNConverter> PlatformIDNConverter::create() { |
| 17 | #if defined(HAVE_LIBIDN) | 17 | #if defined(HAVE_LIBIDN) |
| 18 | return new LibIDNConverter(); | 18 | return std::make_unique<LibIDNConverter>(); |
| 19 | #elif defined(HAVE_ICU) | 19 | #elif defined(HAVE_ICU) |
| 20 | return new ICUConverter(); | 20 | return std::make_unique<ICUConverter>(); |
| 21 | #else | 21 | #else |
| 22 | #if defined(NEED_IDN) | 22 | #if defined(NEED_IDN) |
| 23 | #error "No IDN implementation" | 23 | #error "No IDN implementation" |
| 24 | #else | 24 | #else |
| 25 | return nullptr; | 25 | return {}; |
| 26 | #endif | 26 | #endif |
| 27 | #endif | 27 | #endif |
| 28 | } | 28 | } |
diff --git a/Swiften/IDN/PlatformIDNConverter.h b/Swiften/IDN/PlatformIDNConverter.h index 704f7a7..3b9a275 100644 --- a/Swiften/IDN/PlatformIDNConverter.h +++ b/Swiften/IDN/PlatformIDNConverter.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * Copyright (c) 2012 Isode Limited. | 2 | * Copyright (c) 2012-2019 Isode Limited. |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * See the COPYING file for more information. | 4 | * See the COPYING file for more information. |
| 5 | */ | 5 | */ |
| @@ -8,10 +8,12 @@ | |||
| 8 | 8 | ||
| 9 | #include <Swiften/Base/API.h> | 9 | #include <Swiften/Base/API.h> |
| 10 | 10 | ||
| 11 | #include <memory> | ||
| 12 | |||
| 11 | namespace Swift { | 13 | namespace Swift { |
| 12 | class IDNConverter; | 14 | class IDNConverter; |
| 13 | 15 | ||
| 14 | namespace PlatformIDNConverter { | 16 | namespace PlatformIDNConverter { |
| 15 | SWIFTEN_API IDNConverter* create(); | 17 | SWIFTEN_API std::unique_ptr<IDNConverter> create(); |
| 16 | } | 18 | } |
| 17 | } | 19 | } |
diff --git a/Swiften/Network/BoostNetworkFactories.cpp b/Swiften/Network/BoostNetworkFactories.cpp index 9fef73c..13a7960 100644 --- a/Swiften/Network/BoostNetworkFactories.cpp +++ b/Swiften/Network/BoostNetworkFactories.cpp | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * Copyright (c) 2010-2016 Isode Limited. | 2 | * Copyright (c) 2010-2019 Isode Limited. |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * See the COPYING file for more information. | 4 | * See the COPYING file for more information. |
| 5 | */ | 5 | */ |
| @@ -44,9 +44,9 @@ BoostNetworkFactories::BoostNetworkFactories(EventLoop* eventLoop, std::shared_p | |||
| 44 | idnConverter = PlatformIDNConverter::create(); | 44 | idnConverter = PlatformIDNConverter::create(); |
| 45 | #ifdef USE_UNBOUND | 45 | #ifdef USE_UNBOUND |
| 46 | // TODO: What to do about idnConverter. | 46 | // TODO: What to do about idnConverter. |
| 47 | domainNameResolver = new UnboundDomainNameResolver(idnConverter, ioServiceThread.getIOService(), eventLoop); | 47 | domainNameResolver = new UnboundDomainNameResolver(idnConverter.get(), ioServiceThread.getIOService(), eventLoop); |
| 48 | #else | 48 | #else |
| 49 | domainNameResolver = new PlatformDomainNameResolver(idnConverter, eventLoop); | 49 | domainNameResolver = new PlatformDomainNameResolver(idnConverter.get(), eventLoop); |
| 50 | #endif | 50 | #endif |
| 51 | cryptoProvider = PlatformCryptoProvider::create(); | 51 | cryptoProvider = PlatformCryptoProvider::create(); |
| 52 | } | 52 | } |
| @@ -54,7 +54,6 @@ BoostNetworkFactories::BoostNetworkFactories(EventLoop* eventLoop, std::shared_p | |||
| 54 | BoostNetworkFactories::~BoostNetworkFactories() { | 54 | BoostNetworkFactories::~BoostNetworkFactories() { |
| 55 | delete cryptoProvider; | 55 | delete cryptoProvider; |
| 56 | delete domainNameResolver; | 56 | delete domainNameResolver; |
| 57 | delete idnConverter; | ||
| 58 | delete proxyProvider; | 57 | delete proxyProvider; |
| 59 | delete tlsFactories; | 58 | delete tlsFactories; |
| 60 | delete xmlParserFactory; | 59 | delete xmlParserFactory; |
diff --git a/Swiften/Network/BoostNetworkFactories.h b/Swiften/Network/BoostNetworkFactories.h index 2bf8d33..33a3584 100644 --- a/Swiften/Network/BoostNetworkFactories.h +++ b/Swiften/Network/BoostNetworkFactories.h | |||
| @@ -1,11 +1,13 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * Copyright (c) 2010-2017 Isode Limited. | 2 | * Copyright (c) 2010-2019 Isode Limited. |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * See the COPYING file for more information. | 4 | * See the COPYING file for more information. |
| 5 | */ | 5 | */ |
| 6 | 6 | ||
| 7 | #pragma once | 7 | #pragma once |
| 8 | 8 | ||
| 9 | #include <memory> | ||
| 10 | |||
| 9 | #include <Swiften/Base/API.h> | 11 | #include <Swiften/Base/API.h> |
| 10 | #include <Swiften/Network/BoostIOServiceThread.h> | 12 | #include <Swiften/Network/BoostIOServiceThread.h> |
| 11 | #include <Swiften/Network/NetworkFactories.h> | 13 | #include <Swiften/Network/NetworkFactories.h> |
| @@ -68,7 +70,7 @@ namespace Swift { | |||
| 68 | } | 70 | } |
| 69 | 71 | ||
| 70 | virtual IDNConverter* getIDNConverter() const override { | 72 | virtual IDNConverter* getIDNConverter() const override { |
| 71 | return idnConverter; | 73 | return idnConverter.get(); |
| 72 | } | 74 | } |
| 73 | 75 | ||
| 74 | virtual CryptoProvider* getCryptoProvider() const override { | 76 | virtual CryptoProvider* getCryptoProvider() const override { |
| @@ -87,7 +89,7 @@ namespace Swift { | |||
| 87 | PlatformTLSFactories* tlsFactories; | 89 | PlatformTLSFactories* tlsFactories; |
| 88 | ProxyProvider* proxyProvider; | 90 | ProxyProvider* proxyProvider; |
| 89 | EventLoop* eventLoop; | 91 | EventLoop* eventLoop; |
| 90 | IDNConverter* idnConverter; | 92 | std::unique_ptr<IDNConverter> idnConverter; |
| 91 | CryptoProvider* cryptoProvider; | 93 | CryptoProvider* cryptoProvider; |
| 92 | }; | 94 | }; |
| 93 | } | 95 | } |
Swift