diff options
-rw-r--r-- | src/porting.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/porting.cpp b/src/porting.cpp index e99d08426..8a685539b 100644 --- a/src/porting.cpp +++ b/src/porting.cpp @@ -647,7 +647,8 @@ const char *getVideoDriverFriendlyName(irr::video::E_DRIVER_TYPE type) #ifndef __ANDROID__ #ifdef XORG_USED -float getDisplayDensity() + +static float calcDisplayDensity() { const char* current_display = getenv("DISPLAY"); @@ -665,7 +666,7 @@ float getDisplayDensity() XCloseDisplay(x11display); - return (std::max(dpi_height,dpi_width) / 96.0); + return std::max(dpi_height,dpi_width) / 96.0; } } @@ -673,6 +674,14 @@ float getDisplayDensity() return g_settings->getFloat("screen_dpi")/96.0; } + +float getDisplayDensity() +{ + static float cached_display_density = calcDisplayDensity(); + return cached_display_density; +} + + #else float getDisplayDensity() { |