summaryrefslogtreecommitdiffstats
path: root/chrome/browser/download/download_util.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/download/download_util.cc')
-rw-r--r--chrome/browser/download/download_util.cc13
1 files changed, 5 insertions, 8 deletions
diff --git a/chrome/browser/download/download_util.cc b/chrome/browser/download/download_util.cc
index f9040b3..262c507 100644
--- a/chrome/browser/download/download_util.cc
+++ b/chrome/browser/download/download_util.cc
@@ -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 "base/string_util.h"
#include "chrome/app/locales/locale_settings.h"
@@ -105,24 +106,20 @@ bool BaseContextMenu::IsCommandEnabled(int id) const {
}
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_);