Browse Source

Backends: Win32: Cache the result of a windows version check. (#3283)

This is not expected to change while the application is running :)
Mark Jansen 5 years ago
parent
commit
6eb66fbef3
1 changed files with 2 additions and 1 deletions
  1. 2 1
      examples/imgui_impl_win32.cpp

+ 2 - 1
examples/imgui_impl_win32.cpp

@@ -417,7 +417,8 @@ void ImGui_ImplWin32_EnableDpiAwareness()
 float ImGui_ImplWin32_GetDpiScaleForMonitor(void* monitor)
 float ImGui_ImplWin32_GetDpiScaleForMonitor(void* monitor)
 {
 {
     UINT xdpi = 96, ydpi = 96;
     UINT xdpi = 96, ydpi = 96;
-    if (IsWindows8Point1OrGreater())
+    static BOOL bIsWindows8Point1OrGreater = IsWindows8Point1OrGreater();
+    if (bIsWindows8Point1OrGreater)
     {
     {
         static HINSTANCE shcore_dll = ::LoadLibraryA("shcore.dll"); // Reference counted per-process
         static HINSTANCE shcore_dll = ::LoadLibraryA("shcore.dll"); // Reference counted per-process
         if (PFN_GetDpiForMonitor GetDpiForMonitorFn = (PFN_GetDpiForMonitor)::GetProcAddress(shcore_dll, "GetDpiForMonitor"))
         if (PFN_GetDpiForMonitor GetDpiForMonitorFn = (PFN_GetDpiForMonitor)::GetProcAddress(shcore_dll, "GetDpiForMonitor"))