| Index: chrome/browser/download/chrome_download_manager_delegate.cc
|
| diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrome/browser/download/chrome_download_manager_delegate.cc
|
| index a21f7b706596c5133d8b63d46564285e2e8517f6..5a0921546ca2b5e0786912e229471268029d52dc 100644
|
| --- a/chrome/browser/download/chrome_download_manager_delegate.cc
|
| +++ b/chrome/browser/download/chrome_download_manager_delegate.cc
|
| @@ -458,12 +458,21 @@ void ChromeDownloadManagerDelegate::OpenDownload(DownloadItem* download) {
|
| profile_, chrome::GetActiveDesktop()));
|
| browser = browser_displayer->browser();
|
| }
|
| +
|
| content::OpenURLParams params(
|
| net::FilePathToFileURL(download->GetTargetFilePath()),
|
| content::Referrer(),
|
| NEW_FOREGROUND_TAB,
|
| ui::PAGE_TRANSITION_LINK,
|
| false);
|
| +
|
| + if (download->GetTargetFilePath().MatchesExtension(
|
| + FILE_PATH_LITERAL(".crt"))) {
|
| + params = content::OpenURLParams(GURL("chrome://settings/certificates"),
|
| + content::Referrer(), NEW_FOREGROUND_TAB,
|
| + ui::PAGE_TRANSITION_LINK, false);
|
| + }
|
| +
|
| browser->OpenURL(params);
|
| RecordDownloadOpenMethod(DOWNLOAD_OPEN_METHOD_DEFAULT_BROWSER);
|
| #else
|
| @@ -729,6 +738,12 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDetermined(
|
|
|
| bool ChromeDownloadManagerDelegate::IsOpenInBrowserPreferreredForFile(
|
| const base::FilePath& path) {
|
| +#if defined(OS_LINUX) || defined(OS_CHROMEOS)
|
| + if (path.MatchesExtension(FILE_PATH_LITERAL(".crt"))) {
|
| + return true;
|
| + }
|
| +#endif
|
| +
|
| #if defined(OS_WIN) || defined(OS_LINUX) || \
|
| (defined(OS_MACOSX) && !defined(OS_IOS))
|
| if (path.MatchesExtension(FILE_PATH_LITERAL(".pdf"))) {
|
|
|