summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2012-08-23 14:08:59 -0700
committerJeff Sharkey <jsharkey@android.com>2012-08-23 14:09:14 -0700
commit7382f81fba895f1ac970ac2fad875f35836b8082 (patch)
tree0c5089ae189a34edecc932817b74fe3639acd45b
parentf763b2fc07ee79045ca6c47e54d09dec90694e6c (diff)
downloadsystem_vold-7382f81fba895f1ac970ac2fad875f35836b8082.zip
system_vold-7382f81fba895f1ac970ac2fad875f35836b8082.tar.gz
system_vold-7382f81fba895f1ac970ac2fad875f35836b8082.tar.bz2
Unmount external storage on multi-user devices.
Bug: 7044670 Change-Id: If1f99968b0392cae9420d067c75bfc18d1067b2c
-rw-r--r--cryptfs.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/cryptfs.c b/cryptfs.c
index cebe625..b66f1ac 100644
--- a/cryptfs.c
+++ b/cryptfs.c
@@ -1179,11 +1179,14 @@ int cryptfs_enable(char *howarg, char *passwd)
snprintf(lockid, sizeof(lockid), "enablecrypto%d", (int) getpid());
acquire_wake_lock(PARTIAL_WAKE_LOCK, lockid);
- /* Get the sdcard mount point */
- sd_mnt_point = getenv("EXTERNAL_STORAGE");
- if (! sd_mnt_point) {
- sd_mnt_point = "/mnt/sdcard";
- }
+ /* Get the sdcard mount point */
+ sd_mnt_point = getenv("MULTIUSER_EXTERNAL_STORAGE");
+ if (!sd_mnt_point) {
+ sd_mnt_point = getenv("EXTERNAL_STORAGE");
+ }
+ if (!sd_mnt_point) {
+ sd_mnt_point = "/mnt/sdcard";
+ }
num_vols=vold_getNumDirectVolumes();
vol_list = malloc(sizeof(struct volume_info) * num_vols);