aboutsummaryrefslogtreecommitdiff
path: root/src/client/windows/sender/crash_report_sender.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/windows/sender/crash_report_sender.cc')
-rw-r--r--src/client/windows/sender/crash_report_sender.cc17
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> &parameters,
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