From 2ff075d843dfcc8a151dc378de651c32f8b780c6 Mon Sep 17 00:00:00 2001 From: Hleb Valoshka <375gnu@gmail.com> Date: Wed, 17 Nov 2021 22:57:24 +0200 Subject: [PATCH] [celx] Fix location type returned by loc:getinfo() getFeatureType() returns std::uint64_t + C++14 style for lambda + tiny-tiny optimization around std::string usage --- src/celscript/lua/celx_object.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/celscript/lua/celx_object.cpp b/src/celscript/lua/celx_object.cpp index 8f95804c7..cb5754ec4 100644 --- a/src/celscript/lua/celx_object.cpp +++ b/src/celscript/lua/celx_object.cpp @@ -710,15 +710,15 @@ static int object_getinfo(lua_State* l) celx.setTable("importance", (lua_Number)location->getImportance()); celx.setTable("infoURL", location->getInfoURL().c_str()); - uint32_t featureType = location->getFeatureType(); - string featureName("Unknown"); + auto featureType = location->getFeatureType(); auto &LocationFlagMap = celx.appCore(AllErrors)->scriptMaps()->LocationFlagMap; auto iter = std::find_if(LocationFlagMap.begin(), LocationFlagMap.end(), - [&featureType](pair& it){ return it.second == featureType; }); + [&featureType](auto& it){ return it.second == featureType; }); if (iter != LocationFlagMap.end()) - featureName = iter->first; - celx.setTable("featureType", featureName.c_str()); + celx.setTable("featureType", iter->first.c_str()); + else + celx.setTable("featureType", "Unknown"); Body* parent = location->getParentBody(); if (parent != nullptr)