| Index: chrome/browser/ui/webui/crashes_ui.cc
|
| diff --git a/chrome/browser/ui/webui/crashes_ui.cc b/chrome/browser/ui/webui/crashes_ui.cc
|
| index b885b013ff63318d863a8566963f3ea2c5bbc46c..67d9a55fbee40e06891f92b69367280967fca323 100644
|
| --- a/chrome/browser/ui/webui/crashes_ui.cc
|
| +++ b/chrome/browser/ui/webui/crashes_ui.cc
|
| @@ -89,13 +89,13 @@ class CrashesDOMHandler : public WebUIMessageHandler,
|
|
|
| scoped_refptr<CrashUploadList> upload_list_;
|
| bool list_available_;
|
| - bool js_request_pending_;
|
| + bool first_load_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(CrashesDOMHandler);
|
| };
|
|
|
| CrashesDOMHandler::CrashesDOMHandler()
|
| - : list_available_(false), js_request_pending_(false) {
|
| + : list_available_(false), first_load_(true) {
|
| upload_list_ = CrashUploadList::Create(this);
|
| }
|
|
|
| @@ -105,22 +105,25 @@ CrashesDOMHandler::~CrashesDOMHandler() {
|
|
|
| void CrashesDOMHandler::RegisterMessages() {
|
| upload_list_->LoadUploadListAsynchronously();
|
| -
|
| web_ui()->RegisterMessageCallback("requestCrashList",
|
| base::Bind(&CrashesDOMHandler::HandleRequestCrashes,
|
| base::Unretained(this)));
|
| }
|
|
|
| void CrashesDOMHandler::HandleRequestCrashes(const ListValue* args) {
|
| - if (!CrashesUI::CrashReportingUIEnabled() || list_available_)
|
| - UpdateUI();
|
| - else
|
| - js_request_pending_ = true;
|
| + if (first_load_) {
|
| + first_load_ = false;
|
| + if (list_available_)
|
| + UpdateUI();
|
| + } else {
|
| + list_available_ = false;
|
| + upload_list_->LoadUploadListAsynchronously();
|
| + }
|
| }
|
|
|
| void CrashesDOMHandler::OnUploadListAvailable() {
|
| list_available_ = true;
|
| - if (js_request_pending_)
|
| + if (!first_load_)
|
| UpdateUI();
|
| }
|
|
|
|
|