summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--base/clipboard_util.cc3
-rw-r--r--chrome/common/os_exchange_data.cc2
-rw-r--r--chrome/common/os_exchange_data_unittest.cc4
3 files changed, 4 insertions, 5 deletions
diff --git a/base/clipboard_util.cc b/base/clipboard_util.cc
index 5902b43..9d35db4 100644
--- a/base/clipboard_util.cc
+++ b/base/clipboard_util.cc
@@ -356,8 +356,7 @@ bool ClipboardUtil::GetFileContents(IDataObject* data_object,
if (SUCCEEDED(data_object->GetData(GetFileContentFormatZero(), &content))) {
if (TYMED_HGLOBAL == content.tymed) {
ScopedHGlobal<char> data(content.hGlobal);
- // The size includes the trailing NULL byte. We don't want it.
- file_contents->assign(data.get(), data.Size() - 1);
+ file_contents->assign(data.get(), data.Size());
}
ReleaseStgMedium(&content);
}
diff --git a/chrome/common/os_exchange_data.cc b/chrome/common/os_exchange_data.cc
index ea050de..36553c1 100644
--- a/chrome/common/os_exchange_data.cc
+++ b/chrome/common/os_exchange_data.cc
@@ -330,7 +330,7 @@ void OSExchangeData::SetFileContents(const std::wstring& filename,
ClipboardUtil::GetFileDescriptorFormat()->cfFormat, storage));
// Add CFSTR_FILECONTENTS
- storage = GetStorageForString(file_contents);
+ storage = GetStorageForBytes(file_contents.data(), file_contents.length());
contents_.push_back(new StoredDataInfo(
ClipboardUtil::GetFileContentFormatZero()->cfFormat, storage));
}
diff --git a/chrome/common/os_exchange_data_unittest.cc b/chrome/common/os_exchange_data_unittest.cc
index 594a91a..f54cb72 100644
--- a/chrome/common/os_exchange_data_unittest.cc
+++ b/chrome/common/os_exchange_data_unittest.cc
@@ -265,8 +265,8 @@ TEST(OSExchangeDataTest, TestURLExchangeFormats) {
STGMEDIUM medium;
EXPECT_EQ(S_OK, com_data->GetData(&format_etc, &medium));
- std::string output =
- ScopedHGlobal<char>(medium.hGlobal).get();
+ ScopedHGlobal<char> glob(medium.hGlobal);
+ std::string output(glob.get(), glob.Size());
std::string file_contents = "[InternetShortcut]\r\nURL=" + url_spec + "\r\n";
EXPECT_EQ(file_contents, output);
ReleaseStgMedium(&medium);