summaryrefslogtreecommitdiffstats
path: root/chrome/browser/chromeos/app_mode
diff options
context:
space:
mode:
authorxiyuan <xiyuan@chromium.org>2015-11-17 12:08:23 -0800
committerCommit bot <commit-bot@chromium.org>2015-11-17 20:09:21 +0000
commit8ed1dda1b6102aaeb8320bd58963a8b4c39ba756 (patch)
tree9ecad65951d681c6e7415d94cf481e57a653a1a3 /chrome/browser/chromeos/app_mode
parent5515ea750255e97e3111f6e9a47fb9555f04fac8 (diff)
downloadchromium_src-8ed1dda1b6102aaeb8320bd58963a8b4c39ba756.zip
chromium_src-8ed1dda1b6102aaeb8320bd58963a8b4c39ba756.tar.gz
chromium_src-8ed1dda1b6102aaeb8320bd58963a8b4c39ba756.tar.bz2
kiosk: Flush installed app files and cached crx
So that they don't get corrupted after unclean shutdown. - Update UseSafeInstallation to enable flush in kiosk mode; - Added a |flush_on_put_| bool to ExternalCache and make it flush cached crx when the bool is set; - Update KioskAppManager to set the bool flag when initializing its ExternalCache; BUG=555220 Review URL: https://codereview.chromium.org/1448723002 Cr-Commit-Position: refs/heads/master@{#360142}
Diffstat (limited to 'chrome/browser/chromeos/app_mode')
-rw-r--r--chrome/browser/chromeos/app_mode/kiosk_app_manager.cc1
-rw-r--r--chrome/browser/chromeos/app_mode/startup_app_launcher.cc2
2 files changed, 3 insertions, 0 deletions
diff --git a/chrome/browser/chromeos/app_mode/kiosk_app_manager.cc b/chrome/browser/chromeos/app_mode/kiosk_app_manager.cc
index 7bca13e..b51f66b 100644
--- a/chrome/browser/chromeos/app_mode/kiosk_app_manager.cc
+++ b/chrome/browser/chromeos/app_mode/kiosk_app_manager.cc
@@ -562,6 +562,7 @@ KioskAppManager::KioskAppManager()
this,
true /* always_check_updates */,
false /* wait_for_cache_initialization */));
+ external_cache_->set_flush_on_put(true);
UpdateAppData();
local_accounts_subscription_ =
CrosSettings::Get()->AddSettingsObserver(
diff --git a/chrome/browser/chromeos/app_mode/startup_app_launcher.cc b/chrome/browser/chromeos/app_mode/startup_app_launcher.cc
index 01e9c9f..1515624 100644
--- a/chrome/browser/chromeos/app_mode/startup_app_launcher.cc
+++ b/chrome/browser/chromeos/app_mode/startup_app_launcher.cc
@@ -34,6 +34,7 @@
#include "extensions/browser/extension_system.h"
#include "extensions/common/constants.h"
#include "extensions/common/extension.h"
+#include "extensions/common/file_util.h"
#include "extensions/common/manifest_handlers/kiosk_mode_info.h"
#include "extensions/common/manifest_handlers/offline_enabled_info.h"
#include "extensions/common/manifest_url_handlers.h"
@@ -435,6 +436,7 @@ void StartupAppLauncher::OnLaunchFailure(KioskAppLaunchError::Error error) {
}
void StartupAppLauncher::BeginInstall() {
+ extensions::file_util::SetUseSafeInstallation(true);
KioskAppManager::Get()->InstallFromCache(app_id_);
if (extensions::ExtensionSystem::Get(profile_)
->extension_service()