diff --git a/atom/common/crash_reporter/win/crash_service.cc b/atom/common/crash_reporter/win/crash_service.cc index b3499bc09540..4563a9202a3e 100644 --- a/atom/common/crash_reporter/win/crash_service.cc +++ b/atom/common/crash_reporter/win/crash_service.cc @@ -440,10 +440,12 @@ DWORD CrashService::AsyncSendDump(void* context) { // termination of the service object. base::AutoLock lock(info->self->sending_); VLOG(1) << "trying to send report for pid = " << info->pid; + std::map file_map; + file_map[L"upload_file_minidump"] = info->dump_path; google_breakpad::ReportResult send_result = info->self->sender_->SendCrashReport(info->self->reporter_url_, info->map, - info->dump_path, + file_map, &report_id); switch (send_result) { case google_breakpad::RESULT_FAILED: diff --git a/atom/common/crash_reporter/win/crash_service_main.cc b/atom/common/crash_reporter/win/crash_service_main.cc index 56d46970b67f..c6325f090ade 100644 --- a/atom/common/crash_reporter/win/crash_service_main.cc +++ b/atom/common/crash_reporter/win/crash_service_main.cc @@ -20,6 +20,11 @@ const char kApplicationName[] = "application-name"; const wchar_t kPipeNameFormat[] = L"\\\\.\\pipe\\$1 Crash Service"; const wchar_t kStandardLogFile[] = L"operation_log.txt"; +void InvalidParameterHandler(const wchar_t*, const wchar_t*, const wchar_t*, + unsigned int, uintptr_t) { + // noop. +} + bool GetCrashServiceDirectory(const std::wstring& application_name, base::FilePath* dir) { base::FilePath temp_dir; @@ -37,6 +42,9 @@ bool GetCrashServiceDirectory(const std::wstring& application_name, } // namespace. int Main(const wchar_t* cmd) { + // Ignore invalid parameter errors. + _set_invalid_parameter_handler(InvalidParameterHandler); + // Initialize all Chromium things. base::AtExitManager exit_manager; base::CommandLine::Init(0, NULL); diff --git a/spec/api-crash-reporter-spec.js b/spec/api-crash-reporter-spec.js index f262f6fc834a..b4f63fe1ef27 100644 --- a/spec/api-crash-reporter-spec.js +++ b/spec/api-crash-reporter-spec.js @@ -23,11 +23,6 @@ describe('crash-reporter module', function () { w.destroy() }) - // It is not working on 64bit Windows. - if (process.platform === 'win32' && process.arch === 'x64') { - return - } - if (process.mas) { return } diff --git a/vendor/breakpad b/vendor/breakpad index 4ee7e1a703d0..c566c50d81f7 160000 --- a/vendor/breakpad +++ b/vendor/breakpad @@ -1 +1 @@ -Subproject commit 4ee7e1a703d066861b7bf6fce28526f8ed07dcd6 +Subproject commit c566c50d81f7b1edeaee9f11f5d07bda858d6b64