diff options
author | Tobias Markmann <tm@ayena.de> | 2016-09-26 12:49:48 (GMT) |
---|---|---|
committer | Kevin Smith <kevin.smith@isode.com> | 2016-09-26 22:04:37 (GMT) |
commit | 65596031acaf7d4f277bd75758bb1c551501ce86 (patch) | |
tree | aac3a8bf6dbdccc1d476225b50ba25decf1a46cc /Swiften | |
parent | 05fbe78f5c3b30517f7152b37c157a99120682dc (diff) | |
download | swift-65596031acaf7d4f277bd75758bb1c551501ce86.zip swift-65596031acaf7d4f277bd75758bb1c551501ce86.tar.bz2 |
Use const std::unique_ptr for pimpl idiom usage
All our pimpl idiom usage used std::shared_ptr due to being
written in C++03. Now we use C++11 and const std::unique_ptr
is more sensible.
Test-Information:
Builds on macOS 10.12 and unit tests pass.
Change-Id: I1b9b3fbb22e337d53ae71e5a5e03118998cc3376
Diffstat (limited to 'Swiften')
-rw-r--r-- | Swiften/Compress/ZLibCodecompressor.cpp | 2 | ||||
-rw-r--r-- | Swiften/Compress/ZLibCodecompressor.h | 4 | ||||
-rw-r--r-- | Swiften/Crypto/WindowsCryptoProvider.cpp | 3 | ||||
-rw-r--r-- | Swiften/Crypto/WindowsCryptoProvider.h | 2 | ||||
-rw-r--r-- | Swiften/Network/MiniUPnPInterface.cpp | 2 | ||||
-rw-r--r-- | Swiften/Network/MiniUPnPInterface.h | 2 | ||||
-rw-r--r-- | Swiften/Network/NATPMPInterface.cpp | 2 | ||||
-rw-r--r-- | Swiften/Network/NATPMPInterface.h | 2 | ||||
-rw-r--r-- | Swiften/Parser/ExpatParser.cpp | 4 | ||||
-rw-r--r-- | Swiften/Parser/ExpatParser.h | 2 | ||||
-rw-r--r-- | Swiften/Parser/LibXMLParser.cpp | 1 | ||||
-rw-r--r-- | Swiften/Parser/LibXMLParser.h | 2 |
12 files changed, 15 insertions, 13 deletions
diff --git a/Swiften/Compress/ZLibCodecompressor.cpp b/Swiften/Compress/ZLibCodecompressor.cpp index a9929a8..344e6b7 100644 --- a/Swiften/Compress/ZLibCodecompressor.cpp +++ b/Swiften/Compress/ZLibCodecompressor.cpp @@ -22,7 +22,7 @@ namespace Swift { static const size_t CHUNK_SIZE = 1024; // If you change this, also change the unittest -ZLibCodecompressor::ZLibCodecompressor() : p(std::make_shared<Private>()) { +ZLibCodecompressor::ZLibCodecompressor() : p(new Private()) { memset(&p->stream, 0, sizeof(z_stream)); p->stream.zalloc = Z_NULL; p->stream.zfree = Z_NULL; diff --git a/Swiften/Compress/ZLibCodecompressor.h b/Swiften/Compress/ZLibCodecompressor.h index 641b7a3..8bc5d88 100644 --- a/Swiften/Compress/ZLibCodecompressor.h +++ b/Swiften/Compress/ZLibCodecompressor.h @@ -6,6 +6,8 @@ #pragma once +#include <memory> + #include <Swiften/Base/API.h> #include <Swiften/Base/SafeByteArray.h> @@ -20,6 +22,6 @@ namespace Swift { protected: struct Private; - std::shared_ptr<Private> p; + const std::unique_ptr<Private> p; }; } diff --git a/Swiften/Crypto/WindowsCryptoProvider.cpp b/Swiften/Crypto/WindowsCryptoProvider.cpp index 61ac03e..513941f 100644 --- a/Swiften/Crypto/WindowsCryptoProvider.cpp +++ b/Swiften/Crypto/WindowsCryptoProvider.cpp @@ -190,8 +190,7 @@ namespace { } } -WindowsCryptoProvider::WindowsCryptoProvider() { - p = std::make_shared<Private>(); +WindowsCryptoProvider::WindowsCryptoProvider() : p(new Private()){ if (!CryptAcquireContext(&p->context, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { assert(false); } diff --git a/Swiften/Crypto/WindowsCryptoProvider.h b/Swiften/Crypto/WindowsCryptoProvider.h index ddf7ffa..f446027 100644 --- a/Swiften/Crypto/WindowsCryptoProvider.h +++ b/Swiften/Crypto/WindowsCryptoProvider.h @@ -27,6 +27,6 @@ namespace Swift { private: struct Private; - std::shared_ptr<Private> p; + const std::unique_ptr<Private> p; }; } diff --git a/Swiften/Network/MiniUPnPInterface.cpp b/Swiften/Network/MiniUPnPInterface.cpp index 94305b9..9006ceb 100644 --- a/Swiften/Network/MiniUPnPInterface.cpp +++ b/Swiften/Network/MiniUPnPInterface.cpp @@ -32,7 +32,7 @@ struct MiniUPnPInterface::Private { IGDdatas data; }; -MiniUPnPInterface::MiniUPnPInterface() : p(std::make_shared<Private>()) { +MiniUPnPInterface::MiniUPnPInterface() : p(new Private()) { p->isValid = false; int error = 0; #if MINIUPNPC_API_VERSION > 14 diff --git a/Swiften/Network/MiniUPnPInterface.h b/Swiften/Network/MiniUPnPInterface.h index ea956d9..89457b8 100644 --- a/Swiften/Network/MiniUPnPInterface.h +++ b/Swiften/Network/MiniUPnPInterface.h @@ -28,6 +28,6 @@ namespace Swift { private: struct Private; - std::shared_ptr<Private> p; + const std::unique_ptr<Private> p; }; } diff --git a/Swiften/Network/NATPMPInterface.cpp b/Swiften/Network/NATPMPInterface.cpp index c811212..5e0b3b3 100644 --- a/Swiften/Network/NATPMPInterface.cpp +++ b/Swiften/Network/NATPMPInterface.cpp @@ -30,7 +30,7 @@ struct NATPMPInterface::Private { natpmp_t natpmp; }; -NATPMPInterface::NATPMPInterface() : p(std::make_shared<Private>()) { +NATPMPInterface::NATPMPInterface() : p(new Private()) { initnatpmp(&p->natpmp, 0, 0); } diff --git a/Swiften/Network/NATPMPInterface.h b/Swiften/Network/NATPMPInterface.h index 80f619c..e1666c8 100644 --- a/Swiften/Network/NATPMPInterface.h +++ b/Swiften/Network/NATPMPInterface.h @@ -28,6 +28,6 @@ namespace Swift { private: struct Private; - std::shared_ptr<Private> p; + const std::unique_ptr<Private> p; }; } diff --git a/Swiften/Parser/ExpatParser.cpp b/Swiften/Parser/ExpatParser.cpp index 80cfe76..77d959c 100644 --- a/Swiften/Parser/ExpatParser.cpp +++ b/Swiften/Parser/ExpatParser.cpp @@ -6,9 +6,9 @@ #include <Swiften/Parser/ExpatParser.h> -#include <string> - #include <cassert> +#include <memory> +#include <string> #include <expat.h> diff --git a/Swiften/Parser/ExpatParser.h b/Swiften/Parser/ExpatParser.h index 6580a7a..12df463 100644 --- a/Swiften/Parser/ExpatParser.h +++ b/Swiften/Parser/ExpatParser.h @@ -25,6 +25,6 @@ namespace Swift { private: struct Private; - std::shared_ptr<Private> p; + const std::unique_ptr<Private> p; }; } diff --git a/Swiften/Parser/LibXMLParser.cpp b/Swiften/Parser/LibXMLParser.cpp index a880141..be0a92d 100644 --- a/Swiften/Parser/LibXMLParser.cpp +++ b/Swiften/Parser/LibXMLParser.cpp @@ -8,6 +8,7 @@ #include <cassert> #include <cstring> +#include <memory> #include <string> #include <boost/numeric/conversion/cast.hpp> diff --git a/Swiften/Parser/LibXMLParser.h b/Swiften/Parser/LibXMLParser.h index e63a628..9f752ce 100644 --- a/Swiften/Parser/LibXMLParser.h +++ b/Swiften/Parser/LibXMLParser.h @@ -28,6 +28,6 @@ namespace Swift { static bool initialized; struct Private; - std::shared_ptr<Private> p; + const std::unique_ptr<Private> p; }; } |