Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / extensions / crx_installer.cc
index 9823d4e..ddbf8f1 100644 (file)
@@ -8,7 +8,7 @@
 #include <set>
 
 #include "base/bind.h"
-#include "base/file_util.h"
+#include "base/files/file_util.h"
 #include "base/files/scoped_temp_dir.h"
 #include "base/lazy_instance.h"
 #include "base/metrics/histogram.h"
@@ -37,6 +37,7 @@
 #include "chrome/common/chrome_paths.h"
 #include "chrome/common/extensions/extension_constants.h"
 #include "chrome/common/extensions/manifest_url_handler.h"
+#include "chrome/grit/generated_resources.h"
 #include "content/public/browser/browser_thread.h"
 #include "content/public/browser/notification_service.h"
 #include "content/public/browser/resource_dispatcher_host.h"
 #include "extensions/common/permissions/permission_set.h"
 #include "extensions/common/permissions/permissions_data.h"
 #include "extensions/common/user_script.h"
-#include "grit/chromium_strings.h"
 #include "grit/extensions_strings.h"
-#include "grit/generated_resources.h"
-#include "grit/theme_resources.h"
 #include "third_party/skia/include/core/SkBitmap.h"
 #include "ui/base/l10n/l10n_util.h"
 
@@ -307,8 +305,8 @@ CrxInstallerError CrxInstaller::AllowInstall(const Extension* extension) {
           scoped_refptr<const PermissionSet> expected_permissions =
               dummy_extension->permissions_data()->active_permissions();
           valid = !(PermissionMessageProvider::Get()->IsPrivilegeIncrease(
-              expected_permissions,
-              extension->permissions_data()->active_permissions(),
+              expected_permissions.get(),
+              extension->permissions_data()->active_permissions().get(),
               extension->GetType()));
         }
       }
@@ -496,10 +494,10 @@ void CrxInstaller::CheckInstall() {
       } else if (imported_module &&
           !SharedModuleInfo::IsExportAllowedByWhitelist(imported_module,
                                                         extension()->id())) {
-        ReportFailureFromUIThread(
-            CrxInstallerError(l10n_util::GetStringFUTF16(
-                IDS_EXTENSION_INSTALL_DEPENDENCY_NOT_WHITELISTED,
-                base::ASCIIToUTF16(i->extension_id))));
+        ReportFailureFromUIThread(CrxInstallerError(l10n_util::GetStringFUTF16(
+            IDS_EXTENSION_INSTALL_DEPENDENCY_NOT_WHITELISTED,
+            base::UTF8ToUTF16(extension()->name()),
+            base::UTF8ToUTF16(imported_module->name()))));
         return;
       }
     }
@@ -571,7 +569,7 @@ void CrxInstaller::ConfirmInstall() {
   if (!service || service->browser_terminating())
     return;
 
-  if (KioskModeInfo::IsKioskOnly(install_checker_.extension())) {
+  if (KioskModeInfo::IsKioskOnly(install_checker_.extension().get())) {
     bool in_kiosk_mode = false;
 #if defined(OS_CHROMEOS)
     user_manager::UserManager* user_manager = user_manager::UserManager::Get();
@@ -803,6 +801,7 @@ void CrxInstaller::ReportSuccessFromUIThread() {
     // this silently.
     if ((client_ || allow_silent_install_) && grant_permissions_) {
       PermissionsUpdater perms_updater(profile());
+      perms_updater.InitializePermissions(extension());
       perms_updater.GrantActivePermissions(extension());
     }
   }