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

Unified Diff: components/enhanced_bookmarks/image_store_ios_unittest.mm

Issue 1031293002: Fix crashes due to gfx::Image unsafe thread passing (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove unnecessary Pass() Created 5 years, 9 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 | « components/enhanced_bookmarks/image_store.cc ('k') | components/enhanced_bookmarks/image_store_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/enhanced_bookmarks/image_store_ios_unittest.mm
diff --git a/components/enhanced_bookmarks/image_store_ios_unittest.mm b/components/enhanced_bookmarks/image_store_ios_unittest.mm
index 19dd5fae2b5119943d6c5da7682556d00248fc7f..a22a36687c2384a2b174bdf7448cd361a7def767 100644
--- a/components/enhanced_bookmarks/image_store_ios_unittest.mm
+++ b/components/enhanced_bookmarks/image_store_ios_unittest.mm
@@ -22,7 +22,8 @@ namespace {
// Generates a gfx::Image with a random UIImage representation. Uses off-center
// circle gradient to make all pixels slightly different in order to detect
// small image alterations.
-gfx::Image GenerateRandomUIImage(const gfx::Size& size, float scale) {
+scoped_ptr<gfx::Image> GenerateRandomUIImage(const gfx::Size& size,
+ float scale) {
UIGraphicsBeginImageContextWithOptions(CGSizeMake(size.width(),
size.height()),
YES, // opaque.
@@ -56,7 +57,7 @@ gfx::Image GenerateRandomUIImage(const gfx::Size& size, float scale) {
kCGGradientDrawsAfterEndLocation);
UIImage* image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
- return gfx::Image([image retain]);
+ return scoped_ptr<gfx::Image>(new gfx::Image([image retain]));
}
// Returns true if the two images are identical.
@@ -141,15 +142,18 @@ TYPED_TEST(ImageStoreUnitTestIOS, StoringImagesPreservesScale) {
const gfx::Size image_size(42, 24);
for (unsigned long i = 0; i < arraysize(scales); i++) {
const GURL url("foo://bar");
- const enhanced_bookmarks::ImageRecord image_in(
- GenerateRandomUIImage(image_size, scales[i]), GURL("http://a.jpg"),
- SK_ColorGREEN);
+ scoped_refptr<enhanced_bookmarks::ImageRecord> image_in(
+ new enhanced_bookmarks::ImageRecord(
+ GenerateRandomUIImage(image_size, scales[i]),
+ GURL("http://a.jpg"),
+ SK_ColorGREEN));
this->store_->Insert(url, image_in);
- const enhanced_bookmarks::ImageRecord image_out = this->store_->Get(url);
+ scoped_refptr<enhanced_bookmarks::ImageRecord> image_out =
+ this->store_->Get(url);
- EXPECT_EQ(image_in.url, image_out.url);
- EXPECT_TRUE(CompareImages(image_in.image, image_out.image));
- EXPECT_EQ(image_in.dominant_color, image_out.dominant_color);
+ EXPECT_EQ(image_in->url, image_out->url);
+ EXPECT_TRUE(CompareImages(*image_in->image, *image_out->image));
+ EXPECT_EQ(image_in->dominant_color, image_out->dominant_color);
}
}
« no previous file with comments | « components/enhanced_bookmarks/image_store.cc ('k') | components/enhanced_bookmarks/image_store_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698