]> spindle.queued.net Git - midori/commitdiff
Implement low_memory_profile for Win32
authorPaweł Forysiuk <tuxator@o2.pl>
Tue, 13 Mar 2012 18:49:47 +0000 (19:49 +0100)
committerChristian Dywan <christian@twotoasts.de>
Tue, 13 Mar 2012 19:04:46 +0000 (20:04 +0100)
midori/midori-websettings.c

index d4444ccd9ed7d98f0eaabc8f21ad0064ebbe5e25..6257650eea633b7ae63e20e681b2413e15635aae 100644 (file)
@@ -347,6 +347,13 @@ midori_get_download_dir (void)
 static gboolean
 midori_web_settings_low_memory_profile ()
 {
+#ifdef _WIN32
+    /* See http://msdn.microsoft.com/en-us/library/windows/desktop/aa366589(v=vs.85).aspx */
+    MEMORYSTATUSEX mem;
+    mem.dwLength = sizeof (mem);
+    if (GlobalMemoryStatusEx (&mem))
+        return mem.ullTotalPhys / 1024 / 1024 < 352;
+#else
     gchar* contents;
     const gchar* total;
     if (!g_file_get_contents ("/proc/meminfo", &contents, NULL, NULL))
@@ -357,6 +364,7 @@ midori_web_settings_low_memory_profile ()
         gdouble mem_total = g_ascii_strtoll (value, NULL, 0);
         return mem_total / 1024.0 < 352 + 1;
     }
+#endif
     return FALSE;
 }