Chromium Code Reviews| Index: chrome/browser/chromeos/login/update_screen.cc |
| diff --git a/chrome/browser/chromeos/login/update_screen.cc b/chrome/browser/chromeos/login/update_screen.cc |
| index e39345c0ba9592b526876203e01e3695f68a9af5..0ef0955ead6bd653840fe2913450b420af7d2820 100644 |
| --- a/chrome/browser/chromeos/login/update_screen.cc |
| +++ b/chrome/browser/chromeos/login/update_screen.cc |
| @@ -134,6 +134,16 @@ void UpdateScreen::UpdateStatusChanged(UpdateLibrary* library) { |
| } |
| } |
| +namespace { |
| +void update_callback(void* user_data, UpdateResult result, const char* msg) { |
|
altimofeev
2011/03/09 10:42:27
nit: Please, use BumpyCase for the function's name
stevenjb
2011/03/10 01:23:16
Oops. Relapse. Done.
|
| + if (result != UPDATE_RESULT_SUCCESS) { |
| + DCHECK(user_data); |
| + UpdateScreen* screen = static_cast<UpdateScreen*>(user_data); |
| + screen->ExitUpdate(UpdateScreen::REASON_UPDATE_INIT_FAILED); |
|
altimofeev
2011/03/09 10:42:27
What if update screen has been destroyed before th
stevenjb
2011/03/10 01:23:16
Good catch. I will add an instance list to check.
|
| + } |
| +} |
| +} // namespace |
| + |
| void UpdateScreen::StartUpdate() { |
| // Reset view if view was created. |
| if (view()) { |
| @@ -149,9 +159,8 @@ void UpdateScreen::StartUpdate() { |
| } else { |
| CrosLibrary::Get()->GetUpdateLibrary()->AddObserver(this); |
| VLOG(1) << "Initiate update check"; |
| - if (!CrosLibrary::Get()->GetUpdateLibrary()->CheckForUpdate()) { |
| - ExitUpdate(REASON_UPDATE_INIT_FAILED); |
| - } |
| + CrosLibrary::Get()->GetUpdateLibrary()->RequestUpdate( |
| + update_callback, this); |
| } |
| } |