Make the Datatypes using new syncapi upload unrecoverable errors to breakpad.


BUG=
TEST=

Review URL: http://codereview.chromium.org/10061002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@133251 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/extensions/extension_service.cc b/chrome/browser/extensions/extension_service.cc
index 0b78711f8..75e54055 100644
--- a/chrome/browser/extensions/extension_service.cc
+++ b/chrome/browser/extensions/extension_service.cc
@@ -75,6 +75,7 @@
 #include "chrome/browser/search_engines/template_url_service.h"
 #include "chrome/browser/search_engines/template_url_service_factory.h"
 #include "chrome/browser/sync/api/sync_change.h"
+#include "chrome/browser/sync/api/sync_error_factory.h"
 #include "chrome/browser/themes/theme_service.h"
 #include "chrome/browser/themes/theme_service_factory.h"
 #include "chrome/browser/ui/browser.h"
@@ -1277,17 +1278,22 @@
 SyncError ExtensionService::MergeDataAndStartSyncing(
     syncable::ModelType type,
     const SyncDataList& initial_sync_data,
-    scoped_ptr<SyncChangeProcessor> sync_processor) {
+    scoped_ptr<SyncChangeProcessor> sync_processor,
+    scoped_ptr<SyncErrorFactory> sync_error_factory) {
   CHECK(sync_processor.get());
+  CHECK(sync_error_factory.get());
 
   switch (type) {
     case syncable::EXTENSIONS:
       extension_sync_bundle_.SetupSync(sync_processor.release(),
+                                       sync_error_factory.release(),
                                        initial_sync_data);
       break;
 
     case syncable::APPS:
-      app_sync_bundle_.SetupSync(sync_processor.release(), initial_sync_data);
+      app_sync_bundle_.SetupSync(sync_processor.release(),
+                                 sync_error_factory.release(),
+                                 initial_sync_data);
       break;
 
     default: