X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Fserverenvironment.cpp;fp=src%2Fserverenvironment.cpp;h=39cd7aa642f7d8427dd3f70e6c51915686048fc6;hb=a69b7abe00fb818fd88f3cd04e7f9997ffd21072;hp=06bfc7b98bd7021b940ac092ad3fb8fba83c95c2;hpb=03d86ea0b4900cd0394649597d278d465512d629;p=dragonfireclient.git diff --git a/src/serverenvironment.cpp b/src/serverenvironment.cpp index 06bfc7b98..39cd7aa64 100644 --- a/src/serverenvironment.cpp +++ b/src/serverenvironment.cpp @@ -258,23 +258,22 @@ void LBMManager::applyLBMs(ServerEnvironment *env, MapBlock *block, u32 stamp) v3s16 pos; MapNode n; content_t c; - lbm_lookup_map::const_iterator it = getLBMsIntroducedAfter(stamp); + auto it = getLBMsIntroducedAfter(stamp); for (; it != m_lbm_lookup.end(); ++it) { // Cache previous version to speedup lookup which has a very high performance // penalty on each call - content_t previous_c{}; - std::vector *lbm_list = nullptr; + content_t previous_c = CONTENT_IGNORE; + const std::vector *lbm_list = nullptr; for (pos.X = 0; pos.X < MAP_BLOCKSIZE; pos.X++) for (pos.Y = 0; pos.Y < MAP_BLOCKSIZE; pos.Y++) for (pos.Z = 0; pos.Z < MAP_BLOCKSIZE; pos.Z++) { - n = block->getNodeNoEx(pos); + n = block->getNodeNoCheck(pos, nullptr); c = n.getContent(); // If content_t are not matching perform an LBM lookup if (previous_c != c) { - lbm_list = (std::vector *) - it->second.lookup(c); + lbm_list = it->second.lookup(c); previous_c = c; }