diff options
Diffstat (limited to 'src/client/windows/sender/crash_report_sender.cc')
-rw-r--r-- | src/client/windows/sender/crash_report_sender.cc | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/client/windows/sender/crash_report_sender.cc b/src/client/windows/sender/crash_report_sender.cc index 485ffc36..73675bef 100644 --- a/src/client/windows/sender/crash_report_sender.cc +++ b/src/client/windows/sender/crash_report_sender.cc @@ -36,12 +36,23 @@ namespace google_airbag { // static -bool CrashReportSender::SendCrashReport( +ReportResult CrashReportSender::SendCrashReport( const wstring &url, const map<wstring, wstring> ¶meters, const wstring &dump_file_name, wstring *report_code) { - return HTTPUpload::SendRequest(url, parameters, dump_file_name, - L"upload_file_minidump", report_code); + int http_response = 0; + bool result = HTTPUpload::SendRequest( + url, parameters, dump_file_name, L"upload_file_minidump", report_code, + &http_response); + + if (result) { + return RESULT_SUCCEEDED; + } else if (http_response == 400) { // TODO: update if/when the server + // switches to a different code + return RESULT_REJECTED; + } else { + return RESULT_FAILED; + } } } // namespace google_airbag |