Index: chrome/browser/ui/webui/options/chromeos/change_picture_options_handler.cc |
diff --git a/chrome/browser/ui/webui/options/chromeos/change_picture_options_handler.cc b/chrome/browser/ui/webui/options/chromeos/change_picture_options_handler.cc |
index 300965fae792800e6f21f5fa3c4bad8bbc31195c..8a18e67ab5232fb3f294f35a47ed34e7bb1a92fd 100644 |
--- a/chrome/browser/ui/webui/options/chromeos/change_picture_options_handler.cc |
+++ b/chrome/browser/ui/webui/options/chromeos/change_picture_options_handler.cc |
@@ -98,8 +98,6 @@ ChangePictureOptionsHandler::~ChangePictureOptionsHandler() { |
CameraPresenceNotifier::GetInstance()->RemoveObserver(this); |
if (select_file_dialog_.get()) |
select_file_dialog_->ListenerDestroyed(); |
- if (image_decoder_.get()) |
- image_decoder_->set_delegate(NULL); |
} |
void ChangePictureOptionsHandler::GetLocalizedValues( |
@@ -240,13 +238,11 @@ void ChangePictureOptionsHandler::HandlePhotoTaken( |
user_photo_ = gfx::ImageSkia(); |
user_photo_data_url_ = image_url; |
- if (image_decoder_.get()) |
- image_decoder_->set_delegate(NULL); |
- image_decoder_ = new ImageDecoder(this, raw_data, |
- ImageDecoder::DEFAULT_CODEC); |
scoped_refptr<base::MessageLoopProxy> task_runner = |
BrowserThread::GetMessageLoopProxyForThread(BrowserThread::UI); |
- image_decoder_->Start(task_runner); |
+ ImageDecoder::GetInstance()->Start(this, raw_data, |
+ ImageDecoder::DEFAULT_CODEC, |
+ task_runner); |
} |
void ChangePictureOptionsHandler::HandlePageInitialized( |
@@ -370,7 +366,6 @@ void ChangePictureOptionsHandler::HandleSelectImage( |
} else if (image_type == "camera") { |
// Camera image is selected. |
if (user_photo_.isNull()) { |
- DCHECK(image_decoder_.get()); |
waiting_for_camera_photo = true; |
VLOG(1) << "Still waiting for camera image to decode"; |
} else { |
@@ -394,10 +389,6 @@ void ChangePictureOptionsHandler::HandleSelectImage( |
} else { |
NOTREACHED() << "Unexpected image type: " << image_type; |
} |
- |
- // Ignore the result of the previous decoding if it's no longer needed. |
- if (!waiting_for_camera_photo && image_decoder_.get()) |
- image_decoder_->set_delegate(NULL); |
} |
void ChangePictureOptionsHandler::FileSelected(const base::FilePath& path, |
@@ -458,16 +449,12 @@ gfx::NativeWindow ChangePictureOptionsHandler::GetBrowserWindow() const { |
} |
void ChangePictureOptionsHandler::OnImageDecoded( |
- const ImageDecoder* decoder, |
const SkBitmap& decoded_image) { |
- DCHECK_EQ(image_decoder_.get(), decoder); |
- image_decoder_ = NULL; |
user_photo_ = gfx::ImageSkia::CreateFrom1xBitmap(decoded_image); |
SetImageFromCamera(user_photo_); |
} |
-void ChangePictureOptionsHandler::OnDecodeImageFailed( |
- const ImageDecoder* decoder) { |
+void ChangePictureOptionsHandler::OnDecodeImageFailed() { |
NOTREACHED() << "Failed to decode PNG image from WebUI"; |
} |