mash: Crash when opening system tray networking details, ui_proxy_config_service_ |
|||||||
Issue descriptionchrome --mash on device and on desktop, r468701 [12279:12279:0502/111553.693267:1443876332:FATAL:network_handler.cc(170)] Check failed: ui_proxy_config_service_.get(). #0 0x7fbd2e56d1ec base::debug::StackTrace::StackTrace() #1 0x7fbd2e58227e logging::LogMessage::~LogMessage() #2 0x7fbd2ef6b101 chromeos::NetworkHandler::ui_proxy_config_service() #3 0x7fbd3034cede ash::NetworkListView::UpdateNetworkListEntries() #4 0x7fbd3034c940 ash::NetworkListView::UpdateNetworkListInternal() #5 0x7fbd3034c054 ash::NetworkListView::Update() #6 0x7fbd3033f465 ash::tray::NetworkStateListDetailedView::Init() #7 0x7fbd3030cd56 ash::TrayNetwork::CreateDetailedView() #8 0x7fbd3029324d ash::SystemTrayBubble::CreateItemViews() #9 0x7fbd30292f19 ash::SystemTrayBubble::UpdateView() #10 0x7fbd30291585 ash::SystemTray::ShowItems() #11 0x7fbd30291919 ash::SystemTray::ShowDetailedView() #12 0x7fbd2e5d2d53 base::Timer::RunScheduledTask() #13 0x7fbd2e5fdbc6 base::debug::TaskAnnotator::RunTask() #14 0x7fbd2e587ebe base::MessageLoop::RunTask() #15 0x7fbd2e58827b base::MessageLoop::DeferOrRunPendingTask() #16 0x7fbd2e5889d2 base::MessageLoop::DoDelayedWork() #17 0x7fbd2e589ded base::MessagePumpLibevent::Run() #18 0x7fbd2e587b2b base::MessageLoop::RunHandler() #19 0x7fbd2e5a96a0 base::RunLoop::Run() #20 0x7fbd2e1f33b7 _ZN4base8internal7InvokerINS0_9BindStateIZN15service_manager12_GLOBAL__N_110RunServiceEPNS3_12MainDelegateEE3$_0JS6_PiEEEFvN4mojo16InterfaceRequestINS3_5mojom7ServiceEEEEE3RunEPNS0_13BindStateBaseEOSE_ #21 0x7fbd2ccb1884 service_manager::RunStandaloneService() #22 0x7fbd2e1f2be9 service_manager::Main() #23 0x7fbd2e1d39b1 content::ContentMain() #24 0x7fbd2c91163e ChromeMain #25 0x7fbd2a3b3796 __libc_start_main #26 0x7fbd2c911469 _start It's a CHECK failure on a null ui_proxy_config_service() here: std::unique_ptr<std::set<std::string>> NetworkListView::UpdateNetworkListEntries() { NetworkStateHandler* handler = NetworkHandler::Get()->network_state_handler(); // Keep an index where the next child should be inserted. int index = 0; bool show_connection_warning = !!NetworkHandler::Get()->network_state_handler()->ConnectedNetworkByType( NetworkTypePattern::VPN()); show_connection_warning = show_connection_warning || NetworkHandler::Get() ->ui_proxy_config_service() ->HasDefaultNetworkProxyConfigured(); .... This probably means this code is not covered by tests, otherwise mash_unittests would have caught it. I don't know if we expect to have a ui_proxy_config_service() with mash or not.
,
May 2 2017
I think this needs to be fixed with a null check and a TODO waiting on improvements to the prefs service. UIProxyConfigService is built by NetworkPrefStateObserver in c/b/chromeos/net calling NetworkHandler::InitializePrefServices() during chrome startup and again after user profile load. https://cs.chromium.org/chromium/src/chrome/browser/chromeos/net/network_pref_state_observer.cc?type=cs&sq=package:chromium&l=15 https://cs.chromium.org/chromium/src/chromeos/network/network_handler.cc?l=116&gsn=InitializePrefServices UIProxyConfigService depends on both profile prefs and local state prefs. The mojo prefs service will provide profile prefs soon, but local state prefs are not available. See https://docs.google.com/document/d/1JU8QUWxMEXWMqgkvFUumKSxr7Z-nfq0YvreSJTkMVmU/edit#heading=h.7pmqf27u91lh
,
May 2 2017
Yeah we will need the temporary fix for this while we await the finished service. +tibell@ FYI
,
May 4 2017
,
Jun 29 2017
This is happening again.
,
Jun 29 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/14a3f223996a875cee52cea58d8c036edafb8dfc commit 14a3f223996a875cee52cea58d8c036edafb8dfc Author: James Cook <jamescook@chromium.org> Date: Thu Jun 29 23:13:36 2017 chromeos: Fix crash when showing network list under --mash There is no UIProxyConfigService available under mash because the prefs service does not yet support local state prefs. Just skip the proxy check for now. Bug: 717645 Test: ash_unittests --mash, also manually open menu when running chrome --mash Change-Id: I163b8edb71cbee477d80480abc47bb1e0337becb Reviewed-on: https://chromium-review.googlesource.com/556269 Reviewed-by: Steven Bennetts <stevenjb@chromium.org> Commit-Queue: James Cook <jamescook@chromium.org> Cr-Commit-Position: refs/heads/master@{#483535} [modify] https://crrev.com/14a3f223996a875cee52cea58d8c036edafb8dfc/ash/system/network/network_list.cc [modify] https://crrev.com/14a3f223996a875cee52cea58d8c036edafb8dfc/ash/system/network/tray_network_unittest.cc
,
Jun 30 2017
,
Jan 22 2018
,
Feb 26 2018
|
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by jamescook@chromium.org
, May 2 2017