]> granicus.if.org Git - icinga2/commitdiff
Remove even more unnecessary copies
authorGunnar Beutner <gunnar.beutner@netways.de>
Sat, 27 Aug 2016 18:37:25 +0000 (20:37 +0200)
committerGunnar Beutner <gunnar.beutner@netways.de>
Sat, 27 Aug 2016 18:37:25 +0000 (20:37 +0200)
refs #12509

lib/base/dictionary.cpp
lib/base/value.hpp

index e44cca1279fe6b1c987f3ed26f9d53a6827cf7ba..e3b348fa6a7c49423317719a515811d0f46ee9c7 100644 (file)
@@ -88,7 +88,7 @@ void Dictionary::Set(const String& key, Value&& value)
 {
        ObjectLock olock(this);
 
-       m_Data[key].Swap(value);
+       m_Data[key] = std::move(value);
 }
 
 /**
index 56fed2c40c533b1f0b57eedbc7102b622020aee1..476f7b149b3375060bf7e6ff6bbdd1c13fbed179 100644 (file)
@@ -256,7 +256,7 @@ public:
                if (!IsObject())
                        return false;
 
-               return (dynamic_pointer_cast<T>(boost::get<Object::Ptr>(m_Value)) != NULL);
+               return (dynamic_cast<T *>(boost::get<Object::Ptr>(m_Value).get()) != NULL);
        }
 
        /**