| Index: chrome/browser/download/download_util.cc
|
| ===================================================================
|
| --- chrome/browser/download/download_util.cc (revision 4189)
|
| +++ chrome/browser/download/download_util.cc (working copy)
|
| @@ -10,6 +10,7 @@
|
|
|
| #include "base/base_drag_source.h"
|
| #include "base/file_util.h"
|
| +#include "base/scoped_clipboard_writer.h"
|
| #include "base/gfx/image_operations.h"
|
| #include "chrome/app/theme/theme_resources.h"
|
| #include "chrome/browser/browser_process.h"
|
| @@ -103,24 +104,20 @@
|
| }
|
|
|
| void BaseContextMenu::ExecuteCommand(int id) {
|
| - ClipboardService* clipboard = g_browser_process->clipboard_service();
|
| - DCHECK(clipboard);
|
| + ScopedClipboardWriter scw(g_browser_process->clipboard_service());
|
| switch (id) {
|
| case SHOW_IN_FOLDER:
|
| download_->manager()->ShowDownloadInShell(download_);
|
| break;
|
| case COPY_LINK:
|
| - clipboard->Clear();
|
| - clipboard->WriteText(download_->url());
|
| + scw.WriteText(download_->url());
|
| break;
|
| case COPY_PATH:
|
| - clipboard->Clear();
|
| - clipboard->WriteText(download_->full_path());
|
| + scw.WriteText(download_->full_path());
|
| break;
|
| case COPY_FILE:
|
| // TODO(paulg): Move to OSExchangeData when implementing drag and drop?
|
| - clipboard->Clear();
|
| - clipboard->WriteFile(download_->full_path());
|
| + scw.WriteFile(download_->full_path());
|
| break;
|
| case OPEN_WHEN_COMPLETE:
|
| OpenDownload(download_);
|
|
|