summaryrefslogtreecommitdiff
path: root/src/drawscene.cpp
diff options
context:
space:
mode:
authorLoïc Blot <nerzhul@users.noreply.github.com>2017-06-11 13:58:43 +0200
committerGitHub <noreply@github.com>2017-06-11 13:58:43 +0200
commit65819f3b9f8229666a30b91ef2d289ebc6085097 (patch)
tree722ba29a49ea1707c1db2633b2e84c5c7ebfe2eb /src/drawscene.cpp
parentff73c7a5da6ab8ac0bb678ebf25b83e805397029 (diff)
downloadminetest-65819f3b9f8229666a30b91ef2d289ebc6085097.tar.gz
minetest-65819f3b9f8229666a30b91ef2d289ebc6085097.tar.bz2
minetest-65819f3b9f8229666a30b91ef2d289ebc6085097.zip
Use thread_local instead from some static settings (#5955)
thread_local permits to limit variable lifetime to thread duration. Use it on each setting place which uses static to cache variable result only for thread lifetime. This permits to keep the same performance level & reconfigure server from MT gui in those various variables places. Add thread_local to undersampling calculation too.
Diffstat (limited to 'src/drawscene.cpp')
-rw-r--r--src/drawscene.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/drawscene.cpp b/src/drawscene.cpp
index 59f9b8375..2cf9689a8 100644
--- a/src/drawscene.cpp
+++ b/src/drawscene.cpp
@@ -474,7 +474,7 @@ void draw_plain(Camera &camera, bool show_hud,
// Undersampling-specific stuff
static video::ITexture *image = NULL;
static v2u32 last_pixelated_size = v2u32(0, 0);
- int undersampling = g_settings->getU16("undersampling");
+ static thread_local int undersampling = g_settings->getU16("undersampling");
v2u32 pixelated_size;
v2u32 dest_size;
if (undersampling > 0) {