summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin Smith <git@kismith.co.uk>2017-06-20 20:15:25 (GMT)
committerKevin Smith <kevin.smith@isode.com>2017-06-21 08:29:48 (GMT)
commit83fb5ae3da2e5e690a3eafae99f6cd0cb59a2496 (patch)
treeb2924f4079410642885681d53b1295e5d6125347 /Sluift/ElementConvertors/DOMElementConvertor.cpp
parenta507a88a189bb603c9f2d686c9c8dafca49c053d (diff)
downloadswift-83fb5ae3da2e5e690a3eafae99f6cd0cb59a2496.zip
swift-83fb5ae3da2e5e690a3eafae99f6cd0cb59a2496.tar.bz2
Fix compiler warnings
Both catching polymorphic base classes by value and explicitly moving things preventing return value optimization. Test-Information: Compiles on macOS with latest xcode with allow_warnings=False and unit tests pass Change-Id: Ibdc67f4f2019f85f14635df2a3ff06bddbb8e2b6
Diffstat (limited to 'Sluift/ElementConvertors/DOMElementConvertor.cpp')
-rw-r--r--Sluift/ElementConvertors/DOMElementConvertor.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/Sluift/ElementConvertors/DOMElementConvertor.cpp b/Sluift/ElementConvertors/DOMElementConvertor.cpp
index 72474bb..b957686 100644
--- a/Sluift/ElementConvertors/DOMElementConvertor.cpp
+++ b/Sluift/ElementConvertors/DOMElementConvertor.cpp
@@ -158,44 +158,44 @@ namespace {
DOMElementConvertor::DOMElementConvertor() {
}
DOMElementConvertor::~DOMElementConvertor() {
}
std::shared_ptr<Element> DOMElementConvertor::convertFromLua(lua_State* L, int index, const std::string& type) {
if (!lua_istable(L, index) || type != "dom") {
return std::shared_ptr<Payload>();
}
return std::make_shared<RawXMLPayload>(serializeElement(L).c_str());
}
boost::optional<std::string> DOMElementConvertor::convertToLua(
lua_State* L, std::shared_ptr<Element> element) {
// Serialize payload to XML
std::shared_ptr<Payload> payload = std::dynamic_pointer_cast<Payload>(element);
if (!payload) {
return boost::optional<std::string>();
}
PayloadSerializer* serializer = serializers.getPayloadSerializer(payload);
assert(serializer);
std::string serializedPayload = serializer->serialize(payload);
lua_newtable(L);
// Parse the payload again
ParserClient parserClient(L);
- std::shared_ptr<XMLParser> parser(std::move(parsers.createXMLParser(&parserClient)));
+ std::shared_ptr<XMLParser> parser(parsers.createXMLParser(&parserClient));
bool result = parser->parse(serializedPayload);
assert(result);
// There can only be one element, so stripping the list
lua_pushnil(L);
lua_next(L, -2);
Lua::registerTableToString(L, -1);
lua_replace(L, -3);
lua_settop(L, -2);
return std::string("dom");
}