Initialize the ChromeBrowserProxyResolver only once.

The ChromeBrowserProxyResolver instance was being initialized on every
update check, making it register a listener for the proxy resolved
signal on each update, calling the callback multiple times.

Only the first time the callback is called will actually do something,
and the rest of the calls will only log an error message and return.

This patch removes the error message by registering the callback only once.

Bug: None
TEST=emerge-link update_engine; deployed on a link and ran several update checks.

Change-Id: I8a64fdf168966a895080760b8a95f9d8bf27976c
1 file changed
tree: fd502c995b7ff2fc8b67e902954857d54486cb92
  1. binder_bindings/
  2. client_library/
  3. common/
  4. dbus_bindings/
  5. include/
  6. init/
  7. payload_consumer/
  8. payload_generator/
  9. sample_images/
  10. update_manager/
  11. update_payload_key/
  12. .gitignore
  13. Android.mk
  14. binder_main.cc
  15. binder_service.cc
  16. binder_service.h
  17. chrome_browser_proxy_resolver.cc
  18. chrome_browser_proxy_resolver.h
  19. chrome_browser_proxy_resolver_unittest.cc
  20. connection_manager.cc
  21. connection_manager.h
  22. connection_manager_interface.h
  23. connection_manager_unittest.cc
  24. daemon.cc
  25. daemon.h
  26. dbus_service.cc
  27. dbus_service.h
  28. dbus_service_unittest.cc
  29. dbus_test_utils.h
  30. fake_file_writer.h
  31. fake_p2p_manager.h
  32. fake_p2p_manager_configuration.h
  33. fake_shill_proxy.cc
  34. fake_shill_proxy.h
  35. fake_system_state.cc
  36. fake_system_state.h
  37. generate_pc_file.sh
  38. image_properties.h
  39. image_properties_android.cc
  40. image_properties_chromeos.cc
  41. libcros_proxy.cc
  42. libcros_proxy.h
  43. libupdate_engine-client-test.pc.in
  44. libupdate_engine-client.pc.in
  45. local_coverage_rate
  46. main.cc
  47. metrics.cc
  48. metrics.h
  49. metrics_utils.cc
  50. metrics_utils.h
  51. metrics_utils_unittest.cc
  52. mock_action.h
  53. mock_action_processor.h
  54. mock_connection_manager.h
  55. mock_file_writer.h
  56. mock_omaha_request_params.h
  57. mock_p2p_manager.h
  58. mock_payload_state.h
  59. mock_update_attempter.h
  60. MODULE_LICENSE_APACHE2
  61. NOTICE
  62. omaha_request_action.cc
  63. omaha_request_action.h
  64. omaha_request_action_unittest.cc
  65. omaha_request_params.cc
  66. omaha_request_params.h
  67. omaha_request_params_unittest.cc
  68. omaha_response.h
  69. omaha_response_handler_action.cc
  70. omaha_response_handler_action.h
  71. omaha_response_handler_action_unittest.cc
  72. OWNERS
  73. p2p_manager.cc
  74. p2p_manager.h
  75. p2p_manager_unittest.cc
  76. payload_state.cc
  77. payload_state.h
  78. payload_state_interface.h
  79. payload_state_unittest.cc
  80. PRESUBMIT.cfg
  81. proxy_resolver.cc
  82. proxy_resolver.h
  83. real_system_state.cc
  84. real_system_state.h
  85. run_unittests
  86. sample_omaha_v3_response.xml
  87. shill_proxy.cc
  88. shill_proxy.h
  89. shill_proxy_interface.h
  90. system_state.h
  91. tar_bunzip2.gypi
  92. test_http_server.cc
  93. testrunner.cc
  94. unittest_key.pem
  95. unittest_key2.pem
  96. update_attempter.cc
  97. update_attempter.h
  98. update_attempter_unittest.cc
  99. update_engine-client.gyp
  100. update_engine.conf
  101. update_engine.gyp
  102. update_engine.rc
  103. update_engine_client.cc
  104. update_metadata.proto
  105. update_status_utils.cc
  106. update_status_utils.h
  107. UpdateEngine.conf
  108. WATCHLISTS