| Index: chrome/browser/chrome_content_browser_client.cc | 
| diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc | 
| index ad4f5cb7fa1fb0b35d0d501de67d2445e6ed9ed8..cccc326cb4f44a66d4d910240225e34fb78a7f66 100644 | 
| --- a/chrome/browser/chrome_content_browser_client.cc | 
| +++ b/chrome/browser/chrome_content_browser_client.cc | 
| @@ -53,6 +53,7 @@ | 
| #include "chrome/browser/net/spdyproxy/data_reduction_proxy_chrome_settings.h" | 
| #include "chrome/browser/net/spdyproxy/data_reduction_proxy_chrome_settings_factory.h" | 
| #include "chrome/browser/notifications/platform_notification_service_impl.h" | 
| +#include "chrome/browser/password_manager/chrome_password_manager_client.h" | 
| #include "chrome/browser/platform_util.h" | 
| #include "chrome/browser/prerender/prerender_final_status.h" | 
| #include "chrome/browser/prerender/prerender_manager.h" | 
| @@ -2805,6 +2806,13 @@ void ChromeContentBrowserClient::RegisterRenderFrameMojoServices( | 
| registry->AddService( | 
| base::Bind(&CreateWebUsbChooserService, render_frame_host)); | 
| #endif  // !defined(OS_ANDROID) | 
| + | 
| +  // Register mojo CredentialManager service only for main frame. | 
| +  if (!render_frame_host->GetParent()) { | 
| +    registry->AddService( | 
| +        base::Bind(&ChromePasswordManagerClient::BindCredentialManager, | 
| +                   render_frame_host)); | 
| +  } | 
| } | 
|  | 
| void ChromeContentBrowserClient::RegisterInProcessMojoApplications( | 
|  |