Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7356)

Unified Diff: chrome/common/ipc_message_utils.cc

Issue 94006: Merge r14408. (Closed) Base URL: svn://chrome-svn/chrome/branches/release_154.next/src/
Patch Set: Created 11 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/common/ipc_message_unittest.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/common/ipc_message_utils.cc
===================================================================
--- chrome/common/ipc_message_utils.cc (revision 14414)
+++ chrome/common/ipc_message_utils.cc (working copy)
@@ -34,13 +34,18 @@
fRowBytes = bitmap.rowBytes();
}
- void InitSkBitmapFromData(SkBitmap* bitmap, const char* pixels,
+ // Returns whether |bitmap| successfully initialized.
+ bool InitSkBitmapFromData(SkBitmap* bitmap, const char* pixels,
size_t total_pixels) const {
if (total_pixels) {
bitmap->setConfig(fConfig, fWidth, fHeight, fRowBytes);
- bitmap->allocPixels();
+ if (!bitmap->allocPixels())
+ return false;
+ if (total_pixels > bitmap->getSize())
+ return false;
memcpy(bitmap->getPixels(), pixels, total_pixels);
}
+ return true;
}
};
@@ -86,8 +91,7 @@
}
const SkBitmap_Data* bmp_data =
reinterpret_cast<const SkBitmap_Data*>(fixed_data);
- bmp_data->InitSkBitmapFromData(r, variable_data, variable_data_size);
- return true;
+ return bmp_data->InitSkBitmapFromData(r, variable_data, variable_data_size);
}
void ParamTraits<SkBitmap>::Log(const SkBitmap& p, std::wstring* l) {
« no previous file with comments | « chrome/common/ipc_message_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698