diff options
Diffstat (limited to 'chrome/browser/bug_report_util.cc')
-rw-r--r-- | chrome/browser/bug_report_util.cc | 37 |
1 files changed, 16 insertions, 21 deletions
diff --git a/chrome/browser/bug_report_util.cc b/chrome/browser/bug_report_util.cc index 8ba0e2c..ebb8e24 100644 --- a/chrome/browser/bug_report_util.cc +++ b/chrome/browser/bug_report_util.cc @@ -13,6 +13,7 @@ #include "base/memory/singleton.h" #include "base/string_util.h" #include "base/utf_string_conversions.h" +#include "base/win/windows_version.h" #include "chrome/browser/browser_process_impl.h" #include "chrome/browser/profiles/profile.h" #include "chrome/browser/safe_browsing/safe_browsing_util.h" @@ -135,19 +136,19 @@ void BugReportUtil::PostCleanup::OnURLFetchComplete( // Process the error for debug output if (response_code == kHttpPostFailNoConnection) { - error_stream << "No connection to server."; + error_stream << "No connection to server."; } else if ((response_code > kHttpPostFailClientError) && - (response_code < kHttpPostFailServerError)) { - error_stream << "Client error: HTTP response code " << response_code; + (response_code < kHttpPostFailServerError)) { + error_stream << "Client error: HTTP response code " << response_code; } else if (response_code > kHttpPostFailServerError) { - error_stream << "Server error: HTTP response code " << response_code; + error_stream << "Server error: HTTP response code " << response_code; } else { - error_stream << "Unknown error: HTTP response code " << response_code; + error_stream << "Unknown error: HTTP response code " << response_code; } } - LOG(WARNING) << "FEEDBACK: Submission to feedback server (" << url << - ") status: " << error_stream.str() << std::endl; + LOG(WARNING) << "FEEDBACK: Submission to feedback server (" << url + << ") status: " << error_stream.str(); // Delete the URLFetcher. delete source; @@ -156,21 +157,15 @@ void BugReportUtil::PostCleanup::OnURLFetchComplete( } // static -void BugReportUtil::SetOSVersion(std::string *os_version) { +void BugReportUtil::SetOSVersion(std::string* os_version) { #if defined(OS_WIN) - OSVERSIONINFO osvi; - ZeroMemory(&osvi, sizeof(OSVERSIONINFO)); - osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); - - if (GetVersionEx(&osvi)) { - *os_version = StringPrintf("%d.%d.%d %S", - osvi.dwMajorVersion, - osvi.dwMinorVersion, - osvi.dwBuildNumber, - osvi.szCSDVersion); - } else { - *os_version = "unknown"; - } + base::win::OSInfo* os_info = base::win::OSInfo::GetInstance(); + base::win::OSInfo::VersionNumber version_number = os_info->version_number(); + *os_version = StringPrintf("%d.%d.%d", version_number.major, + version_number.minor, version_number.build); + int service_pack = os_info->service_pack().major; + if (service_pack > 0) + os_version->append(StringPrintf("Service Pack %d", service_pack)); #elif defined(OS_MACOSX) int32 major; int32 minor; |