Index: chrome/browser/ui/ash/session_state_delegate_chromeos.cc |
diff --git a/chrome/browser/ui/ash/session_state_delegate_chromeos.cc b/chrome/browser/ui/ash/session_state_delegate_chromeos.cc |
index 9b1edd275b5fe1d6da7d3ddc9f3727a3eb772e2f..a40085b40f5f417491d8fb4c7f2e0701f03e9805 100644 |
--- a/chrome/browser/ui/ash/session_state_delegate_chromeos.cc |
+++ b/chrome/browser/ui/ash/session_state_delegate_chromeos.cc |
@@ -18,6 +18,7 @@ |
#include "chrome/browser/chromeos/profiles/profile_helper.h" |
#include "chrome/browser/profiles/profile.h" |
#include "chrome/browser/profiles/profile_manager.h" |
+#include "chrome/browser/ui/ash/multi_user/multi_user_util.h" |
#include "chrome/browser/ui/ash/multi_user/multi_user_window_manager.h" |
#include "chrome/common/pref_names.h" |
#include "chromeos/chromeos_switches.h" |
@@ -66,8 +67,17 @@ SessionStateDelegateChromeos::GetBrowserContextForWindow( |
chrome::MultiUserWindowManager::GetInstance()->GetWindowOwner(window); |
const user_manager::User* user = |
user_manager::UserManager::Get()->FindUser(user_id); |
- DCHECK(user); |
- return chromeos::ProfileHelper::Get()->GetProfileByUserUnsafe(user); |
+ return user ? (chromeos::ProfileHelper::Get()->GetProfileByUserUnsafe(user)) |
+ : NULL; |
+} |
+ |
+content::BrowserContext* |
+SessionStateDelegateChromeos::GetUserPresentingBrowserContextForWindow( |
+ aura::Window* window) { |
+ const std::string user_id = |
+ chrome::MultiUserWindowManager::GetInstance()->GetUserPresentingWindow( |
+ window); |
+ return multi_user_util::GetProfileFromUserID(user_id); |
} |
int SessionStateDelegateChromeos::GetMaximumNumberOfLoggedInUsers() const { |