Index: chrome/browser/extensions/extension_preference_api.cc |
diff --git a/chrome/browser/extensions/extension_preference_api.cc b/chrome/browser/extensions/extension_preference_api.cc |
index 2759c89548af020d4cb885930c071a519ef5f7a1..ae65a58ec40a63222adcd15141b560a92dcc3da3 100644 |
--- a/chrome/browser/extensions/extension_preference_api.cc |
+++ b/chrome/browser/extensions/extension_preference_api.cc |
@@ -29,10 +29,10 @@ struct PrefMappingEntry { |
const char* permission; |
}; |
-const char kNotControllable[] = "NotControllable"; |
-const char kControlledByOtherExtensions[] = "ControlledByOtherExtensions"; |
-const char kControllableByThisExtension[] = "ControllableByThisExtension"; |
-const char kControlledByThisExtension[] = "ControlledByThisExtension"; |
+const char kNotControllable[] = "not_controllable"; |
+const char kControlledByOtherExtensions[] = "controlled_by_other_extensions"; |
+const char kControllableByThisExtension[] = "controllable_by_this_extension"; |
+const char kControlledByThisExtension[] = "controlled_by_this_extension"; |
const char kIncognito[] = "incognito"; |
const char kIncognitoSpecific[] = "incognitoSpecific"; |
@@ -397,6 +397,12 @@ bool SetPreferenceFunction::RunImpl() { |
return false; |
} |
+ if (scope == extension_prefs_scope::kIncognitoSessionOnly && |
+ !profile_->HasOffTheRecordProfile()) { |
+ error_ = kIncognitoSessionOnlyErrorMessage; |
+ return false; |
+ } |
+ |
std::string browser_pref; |
std::string permission; |
EXTENSION_FUNCTION_VALIDATE( |