ExtensionSyncService: listen for relevant changes instead of being explicitly called...
[chromium-blink-merge.git] / chrome / browser / crash_upload_list.cc
blob82e17d4d5cba554fce3ef1038573cbcf06e0d4da
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "chrome/browser/crash_upload_list.h"
7 #include "base/files/file_path.h"
8 #include "base/path_service.h"
9 #include "base/threading/sequenced_worker_pool.h"
10 #include "build/build_config.h"
11 #include "chrome/common/chrome_paths.h"
12 #include "content/public/browser/browser_thread.h"
14 #if defined(OS_WIN)
15 #include "chrome/browser/crash_upload_list_win.h"
16 #elif defined(OS_MACOSX)
17 #include "chrome/browser/crash_upload_list_mac.h"
18 #endif
20 scoped_refptr<CrashUploadList> CreateCrashUploadList(
21 UploadList::Delegate* delegate) {
22 base::FilePath crash_dir_path;
23 PathService::Get(chrome::DIR_CRASH_DUMPS, &crash_dir_path);
24 base::FilePath upload_log_path =
25 crash_dir_path.AppendASCII(CrashUploadList::kReporterLogFilename);
26 #if defined(OS_WIN)
27 return new CrashUploadListWin(delegate, upload_log_path,
28 content::BrowserThread::GetBlockingPool());
29 #elif defined(OS_MACOSX)
30 return new CrashUploadListMac(delegate, upload_log_path,
31 content::BrowserThread::GetBlockingPool());
32 #else
33 return new CrashUploadList(delegate, upload_log_path,
34 content::BrowserThread::GetBlockingPool());
35 #endif