Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2988)

Unified Diff: chrome/browser/chromeos/login/user_controller.cc

Issue 7867044: PART1: Initiated the SignedSettings refactoring. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Addressed the comments from Denis. Created 9 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/login/user_controller.cc
diff --git a/chrome/browser/chromeos/login/user_controller.cc b/chrome/browser/chromeos/login/user_controller.cc
index 069cdc98396eb3f03d1fe9a15478750a6fed19e0..6b7b3e09f6e86ab05cab4317d38ff7b26f62e831 100644
--- a/chrome/browser/chromeos/login/user_controller.cc
+++ b/chrome/browser/chromeos/login/user_controller.cc
@@ -8,6 +8,7 @@
#include <vector>
#include "base/utf_string_conversions.h"
+#include "chrome/browser/chromeos/cros_settings.h"
#include "chrome/browser/chromeos/login/existing_user_view.h"
#include "chrome/browser/chromeos/login/guest_user_view.h"
#include "chrome/browser/chromeos/login/helper.h"
@@ -16,7 +17,6 @@
#include "chrome/browser/chromeos/login/username_view.h"
#include "chrome/browser/chromeos/login/wizard_accessibility_helper.h"
#include "chrome/browser/chromeos/login/wizard_controller.h"
-#include "chrome/browser/chromeos/user_cros_settings_provider.h"
#include "grit/generated_resources.h"
#include "grit/theme_resources.h"
#include "third_party/cros_system_api/window_manager/chromeos_wm_ipc_enums.h"
@@ -55,6 +55,16 @@ void CloseWindow(views::Widget* window) {
window->CloseNow();
}
+// Helper function to initialize the is_owner_ const field of UserController.
+bool VerifyOwnership(const std::string& email) {
+ // Empty owner string means that owner hasn't been cached yet, not that owner
+ // has an empty email.
+ // TODO(pastarmovj): Consider switching to TrustedGet here.
+ std::string owner;
+ return CrosSettings::Get()->GetString(kDeviceOwner, &owner) &&
+ (email == owner);
+}
+
} // namespace
// WidgetDelegate implementation for the Widget used for the controls.
@@ -125,9 +135,7 @@ UserController::UserController(Delegate* delegate,
is_user_selected_(false),
is_new_user_(false),
is_guest_(false),
- // Empty 'cached_owner()' means that owner hasn't been cached yet, not
- // that owner has an empty email.
- is_owner_(user.email() == UserCrosSettingsProvider::cached_owner()),
+ is_owner_(VerifyOwnership(user.email())),
Mattias Nissler (ping if slow) 2011/09/21 11:12:59 same comment as before regarding the inaccuracy of
pastarmovj 2011/09/23 15:19:32 I already have a todo to consider switching this t
show_name_tooltip_(false),
user_(user),
delegate_(delegate),

Powered by Google App Engine
This is Rietveld 408576698