diff --git a/atom/common/api/atom_bindings.cc b/atom/common/api/atom_bindings.cc index f4a645315295..d8c21d635093 100644 --- a/atom/common/api/atom_bindings.cc +++ b/atom/common/api/atom_bindings.cc @@ -164,7 +164,15 @@ v8::Local AtomBindings::GetSystemMemoryInfo(v8::Isolate* isolate, mate::Dictionary dict = mate::Dictionary::CreateEmpty(isolate); dict.Set("total", mem_info.total); - dict.Set("free", mem_info.free); + + // See Chromium's "base/process/process_metrics.h" for an explanation. + int free = +#if defined(OS_WIN) + mem_info.avail_phys; +#else + mem_info.free; +#endif + dict.Set("free", free); // NB: These return bogus values on macOS #if !defined(OS_MACOSX)