summaryrefslogtreecommitdiffstats
path: root/chrome/browser/bug_report_data.cc
diff options
context:
space:
mode:
authorrkc@chromium.org <rkc@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-10-28 22:18:33 +0000
committerrkc@chromium.org <rkc@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-10-28 22:18:33 +0000
commit909aee536c2a7ad276d6ef1154fa483b8dfaa4a8 (patch)
treeca4c3a32c1d07e5c263aaa308fa602013eed2566 /chrome/browser/bug_report_data.cc
parent93e1add1e4eaa6d754435e13d0e371ea667a2002 (diff)
downloadchromium_src-909aee536c2a7ad276d6ef1154fa483b8dfaa4a8.zip
chromium_src-909aee536c2a7ad276d6ef1154fa483b8dfaa4a8.tar.gz
chromium_src-909aee536c2a7ad276d6ef1154fa483b8dfaa4a8.tar.bz2
Changes to enable retry of failed sends on feedback reports.
If the initial send fails, the first retry will be in 15 minutes after the attempt. The next attempt will be in 30 minutes and the time will double till we hit a 4 hour delay - the send will be then retried every 4 hours till the Chrome instance is up. BUG=cros:6331 TEST=Tested with up to 25 reports at a time, with varying network connectivity (via pulling out the network cable); report data verified on the feedback server. Review URL: http://codereview.chromium.org/4027005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64321 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/bug_report_data.cc')
-rw-r--r--chrome/browser/bug_report_data.cc34
1 files changed, 34 insertions, 0 deletions
diff --git a/chrome/browser/bug_report_data.cc b/chrome/browser/bug_report_data.cc
new file mode 100644
index 0000000..9219e52
--- /dev/null
+++ b/chrome/browser/bug_report_data.cc
@@ -0,0 +1,34 @@
+// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/bug_report_data.h"
+
+#include "chrome/browser/browser.h"
+
+#if defined(OS_CHROMEOS)
+#include "chrome/browser/chromeos/notifications/system_notification.h"
+#endif
+
+
+
+#if defined(OS_CHROMEOS)
+// Called from the same thread as HandleGetDialogDefaults, i.e. the UI thread.
+void BugReportData::SyslogsComplete(chromeos::LogDictionaryType* logs,
+ std::string* zip_content) {
+ if (sent_report_) {
+ // We already sent the report, just delete the data.
+ if (logs)
+ delete logs;
+ if (zip_content)
+ delete zip_content;
+ } else {
+ zip_content_ = zip_content;
+ sys_info_ = logs; // Will get deleted when SendReport() is called.
+ if (send_sys_info_) {
+ // We already prepared the report, send it now.
+ this->SendReport();
+ }
+ }
+}
+#endif