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"
15 #include "chrome/browser/crash_upload_list_win.h"
16 #elif defined(OS_MACOSX)
17 #include "chrome/browser/crash_upload_list_mac.h"
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
);
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());
33 return new CrashUploadList(delegate
, upload_log_path
,
34 content::BrowserThread::GetBlockingPool());