Index: chrome/browser/chromeos/login/user_image.cc |
diff --git a/chrome/browser/chromeos/login/user_image.cc b/chrome/browser/chromeos/login/user_image.cc |
index 41cd6e1fb5e68cc65609b3a44b4c9f436dae5a21..088e2ff260fd95a06d5aa6633edf3f8055561981 100644 |
--- a/chrome/browser/chromeos/login/user_image.cc |
+++ b/chrome/browser/chromeos/login/user_image.cc |
@@ -23,12 +23,15 @@ bool IsAnimatedImage(const UserImage::RawImage& data) { |
} // namespace |
+UserImage::UserImage() |
+ : has_raw_image_(false), |
+ has_animated_image_(false) { |
+} |
+ |
UserImage::UserImage(const gfx::ImageSkia& image) |
: image_(image), |
has_raw_image_(false), |
has_animated_image_(false) { |
- if (gfx::PNGCodec::EncodeBGRASkBitmap(image_, false, &raw_image_)) |
- has_raw_image_ = true; |
} |
UserImage::UserImage(const gfx::ImageSkia& image, |
@@ -39,25 +42,14 @@ UserImage::UserImage(const gfx::ImageSkia& image, |
if (IsAnimatedImage(raw_image)) { |
has_animated_image_ = true; |
animated_image_ = raw_image; |
- } |
- if (gfx::PNGCodec::EncodeBGRASkBitmap(image_, false, &raw_image_)) |
+ if (gfx::PNGCodec::EncodeBGRASkBitmap(image_, false, &raw_image_)) |
+ has_raw_image_ = true; |
+ } else { |
has_raw_image_ = true; |
+ raw_image_ = raw_image; |
+ } |
} |
UserImage::~UserImage() {} |
-void UserImage::SetImage(const gfx::ImageSkia& image) { |
- image_ = image; |
- if (gfx::PNGCodec::EncodeBGRASkBitmap(image_, false, &raw_image_)) { |
- has_raw_image_ = true; |
- } else { |
- has_raw_image_ = false; |
- RawImage().swap(raw_image_); // Clear |raw_image_|. |
- } |
- |
- has_animated_image_ = false; |
- if (!animated_image_.empty()) |
- RawImage().swap(animated_image_); // Clear |animated_image_|. |
-} |
- |
} // namespace chromeos |