Index: chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc |
diff --git a/chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc b/chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc |
index 69b0dc70562c02695b5ce251f9083c5b3da41aba..baca1b3c24c4df6f1e5b92f0418e013f34b78096 100644 |
--- a/chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc |
+++ b/chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc |
@@ -1779,6 +1779,16 @@ void PopulateCellularDetails(const NetworkState* cellular, |
cellular->activation_state() == flimflam::kActivationStateActivating || |
cellular->IsConnectingState()); |
+ // Don't show any account management related buttons if the activation |
+ // state is unknown or no payment portal URL is available. |
+ std::string support_url; |
+ if (cellular->activation_state() == flimflam::kActivationStateUnknown || |
+ !dictionary->GetString(kTagSupportUrl, &support_url) || |
+ support_url.empty()) { |
+ VLOG(2) << "No support URL is available. Don't display buttons."; |
+ return; |
+ } |
+ |
if (cellular->activation_state() != flimflam::kActivationStateActivating && |
cellular->activation_state() != flimflam::kActivationStateActivated) { |
dictionary->SetBoolean(kTagShowActivateButton, true); |