summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohnny Willemsen <jwillemsen@remedy.nl>2018-05-16 18:25:20 +0200
committerGitHub <noreply@github.com>2018-05-16 18:25:20 +0200
commitc6ae9085687129d6a3df63b9ead3b5ae5f05d741 (patch)
tree3eee4a11e20b2f177a3fa29418376854ce1e65c5
parent7497a3a2d76e2dc354a0a428bb037a4152b9afc4 (diff)
parent4c6e6ee3e74a866a345e0cb056b549815fcda121 (diff)
downloadATCD-c6ae9085687129d6a3df63b9ead3b5ae5f05d741.tar.gz
Merge pull request #628 from jwillemsen/jwi-autoptr-xmlutils
Make use of std::unique_ptr when C++11 is used
-rw-r--r--ACE/ace/XML_Utils/XML_Helper.h4
-rw-r--r--ACE/ace/XML_Utils/XSCRT/Elements.hpp8
2 files changed, 12 insertions, 0 deletions
diff --git a/ACE/ace/XML_Utils/XML_Helper.h b/ACE/ace/XML_Utils/XML_Helper.h
index 6fa5b8d789f..001a575b947 100644
--- a/ACE/ace/XML_Utils/XML_Helper.h
+++ b/ACE/ace/XML_Utils/XML_Helper.h
@@ -83,7 +83,11 @@ namespace XML
private:
bool initialized_;
XERCES_CPP_NAMESPACE::DOMImplementation *impl_;
+#if defined (ACE_HAS_CPP11)
+ mutable std::unique_ptr<XERCES_CPP_NAMESPACE::XercesDOMParser> parser_;
+#else
mutable std::auto_ptr<XERCES_CPP_NAMESPACE::XercesDOMParser> parser_;
+#endif /* ACE_HAS_CPP11 */
Resolver *resolver_;
bool release_resolver_;
diff --git a/ACE/ace/XML_Utils/XSCRT/Elements.hpp b/ACE/ace/XML_Utils/XSCRT/Elements.hpp
index dcf8844eb65..5395a2a930a 100644
--- a/ACE/ace/XML_Utils/XSCRT/Elements.hpp
+++ b/ACE/ace/XML_Utils/XSCRT/Elements.hpp
@@ -148,7 +148,11 @@ namespace XSCRT
{
if (map_.get () == 0)
{
+#if defined (ACE_HAS_CPP11)
+ map_ = std::unique_ptr<Map_> (new Map_);
+#else
map_ = std::auto_ptr<Map_> (new Map_);
+#endif /* ACE_HAS_CPP11 */
}
if (!map_->insert (std::pair<IdentityProvider const*, Type*> (&id, t)).second)
@@ -262,7 +266,11 @@ namespace XSCRT
std::map<IdentityProvider const*, Type*, IdentityComparator>
Map_;
+#if defined (ACE_HAS_CPP11)
+ std::unique_ptr<Map_> map_;
+#else
std::auto_ptr<Map_> map_;
+#endif /* ACE_HAS_CPP11 */
};
// Fundamental types template.