aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLoic Blot <loic.blot@unix-experience.fr>2017-07-18 08:18:13 +0200
committerLoic Blot <loic.blot@unix-experience.fr>2017-07-18 08:18:13 +0200
commit14a1a712de801ac11fd6203d6169abc194eab5b3 (patch)
tree94c3a86957009bca93390e2ce545afc64f959977
parent5117ce4c901eb6ef07ce87b963a92535b312e659 (diff)
downloadminetest-14a1a712de801ac11fd6203d6169abc194eab5b3.tar.gz
minetest-14a1a712de801ac11fd6203d6169abc194eab5b3.tar.bz2
minetest-14a1a712de801ac11fd6203d6169abc194eab5b3.zip
Very little performance fix on correctBlockNodeIds
+ C++11 codestyle
-rw-r--r--src/mapblock.cpp31
1 files changed, 13 insertions, 18 deletions
diff --git a/src/mapblock.cpp b/src/mapblock.cpp
index bf7f9dcd3..ed4f09692 100644
--- a/src/mapblock.cpp
+++ b/src/mapblock.cpp
@@ -492,19 +492,17 @@ static void correctBlockNodeIds(const NameIdMapping *nimap, MapNode *nodes,
// the information to convert those to names.
// nodedef contains information to convert our names to globally
// correct ids.
- std::set<content_t> unnamed_contents;
- std::set<std::string> unallocatable_contents;
+ std::unordered_set<content_t> unnamed_contents;
+ std::unordered_set<std::string> unallocatable_contents;
for (u32 i = 0; i < MapBlock::nodecount; i++) {
content_t local_id = nodes[i].getContent();
std::string name;
- bool found = nimap->getName(local_id, name);
- if(!found){
+ if (!nimap->getName(local_id, name)) {
unnamed_contents.insert(local_id);
continue;
}
content_t global_id;
- found = nodedef->getId(name, global_id);
- if(!found){
+ if (!nodedef->getId(name, global_id)) {
global_id = gamedef->allocateUnknownNodeId(name);
if(global_id == CONTENT_IGNORE){
unallocatable_contents.insert(name);
@@ -513,19 +511,16 @@ static void correctBlockNodeIds(const NameIdMapping *nimap, MapNode *nodes,
}
nodes[i].setContent(global_id);
}
- for(std::set<content_t>::const_iterator
- i = unnamed_contents.begin();
- i != unnamed_contents.end(); ++i){
- errorstream<<"correctBlockNodeIds(): IGNORING ERROR: "
- <<"Block contains id "<<(*i)
- <<" with no name mapping"<<std::endl;
+
+ for (const content_t c: unnamed_contents) {
+ errorstream << "correctBlockNodeIds(): IGNORING ERROR: "
+ << "Block contains id " << c
+ << " with no name mapping" << std::endl;
}
- for(std::set<std::string>::const_iterator
- i = unallocatable_contents.begin();
- i != unallocatable_contents.end(); ++i){
- errorstream<<"correctBlockNodeIds(): IGNORING ERROR: "
- <<"Could not allocate global id for node name \""
- <<(*i)<<"\""<<std::endl;
+ for (const std::string &node_name: unallocatable_contents) {
+ errorstream << "correctBlockNodeIds(): IGNORING ERROR: "
+ << "Could not allocate global id for node name \""
+ << node_name << "\"" << std::endl;
}
}