diff options
Diffstat (limited to 'ipc/chromium/src/base/sys_info_posix.cc')
-rw-r--r-- | ipc/chromium/src/base/sys_info_posix.cc | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/ipc/chromium/src/base/sys_info_posix.cc b/ipc/chromium/src/base/sys_info_posix.cc index 81ec78053..1f2cbdb13 100644 --- a/ipc/chromium/src/base/sys_info_posix.cc +++ b/ipc/chromium/src/base/sys_info_posix.cc @@ -121,7 +121,11 @@ std::wstring SysInfo::GetEnvVar(const wchar_t* var) { // static std::string SysInfo::OperatingSystemName() { +#ifndef XP_SOLARIS utsname info; +#else + struct utsname info; +#endif if (uname(&info) < 0) { NOTREACHED(); return ""; @@ -129,9 +133,17 @@ std::string SysInfo::OperatingSystemName() { return std::string(info.sysname); } +// Solaris <sys/utsname.h> contains "extern struct utsname utsname;" +// As a consequence, any use of utsname has to be preceded with struct on +// Solaris. See Mozilla bugs 758483 and 1353332. + // static std::string SysInfo::CPUArchitecture() { +#ifndef XP_SOLARIS utsname info; +#else + struct utsname info; +#endif if (uname(&info) < 0) { NOTREACHED(); return ""; |