summaryrefslogtreecommitdiffstats
path: root/base/sys_info.h
diff options
context:
space:
mode:
authorjeremy@chromium.org <jeremy@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-24 15:40:38 +0000
committerjeremy@chromium.org <jeremy@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-24 15:40:38 +0000
commit4cc015107e2fcc166da1d9d0debfa3e48f30192c (patch)
tree92866130e7dec74b6b4ed60b143f864ad52147c0 /base/sys_info.h
parent3e9f7fc1bbd90e6e439180e9cedcc48dc7ac9924 (diff)
downloadchromium_src-4cc015107e2fcc166da1d9d0debfa3e48f30192c.zip
chromium_src-4cc015107e2fcc166da1d9d0debfa3e48f30192c.tar.gz
chromium_src-4cc015107e2fcc166da1d9d0debfa3e48f30192c.tar.bz2
Fix for Sandboxed WebKit on OS X:
* Cache Gestalt's value since it opens files. * Do a little cleanup in sys_info while I'm there and add a unit test. * Label some methods as not being threadsafe on OSX/POSIX. Review URL: http://codereview.chromium.org/27088 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10259 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/sys_info.h')
-rw-r--r--base/sys_info.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/base/sys_info.h b/base/sys_info.h
index 35d371b..16b8690 100644
--- a/base/sys_info.h
+++ b/base/sys_info.h
@@ -14,6 +14,8 @@ namespace base {
class SysInfo {
public:
// Return the number of logical processors/cores on the current machine.
+ // WARNING: On POSIX, this method uses static variables and is not threadsafe
+ // until it's been initialized by being called once without a race.
static int NumberOfProcessors();
// Return the number of bytes of physical memory on the current machine.
@@ -43,6 +45,15 @@ class SysInfo {
// Returns the version of the host operating system.
static std::string OperatingSystemVersion();
+ // Retrieves detailed numeric values for the OS version.
+ // WARNING: On OS X, this method uses static variables and is not threadsafe
+ // until it's been initialized by being called once without a race.
+ // TODO(port): Implement a Linux version of this method and enable the
+ // corresponding unit test.
+ static void OperatingSystemVersionNumbers(int32 *major_version,
+ int32 *minor_version,
+ int32 *bugfix_version);
+
// Returns the CPU architecture of the system. Exact return value may differ
// across platforms.
static std::string CPUArchitecture();