From 997a2d93d7a9216c248be9c983adec2d91283f5a Mon Sep 17 00:00:00 2001 From: Gerry Fan Date: Fri, 12 Jul 2019 15:07:59 +0000 Subject: [PATCH] Revert "Revert "rootdir / sdcard : Stop creating /data/media/obb."" This reverts commit 891a0113941136544509886c1638d973a6c9773c. Reason for revert: Some Test failed, need more investigation Bug: 136199978 Change-Id: Ibad0dad02a6701447c39ddcc805d44c9e68bdcce --- rootdir/init.rc | 1 - sdcard/sdcard.cpp | 9 ++++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/rootdir/init.rc b/rootdir/init.rc index 1b7367c46..260199794 100644 --- a/rootdir/init.rc +++ b/rootdir/init.rc @@ -586,7 +586,6 @@ on post-fs-data symlink /data/data /data/user/0 mkdir /data/media 0770 media_rw media_rw - mkdir /data/media/obb 0770 media_rw media_rw mkdir /data/cache 0770 system cache mkdir /data/cache/recovery 0770 system cache diff --git a/sdcard/sdcard.cpp b/sdcard/sdcard.cpp index 2b358197a..0acea7266 100644 --- a/sdcard/sdcard.cpp +++ b/sdcard/sdcard.cpp @@ -214,7 +214,14 @@ static void run_sdcardfs(const std::string& source_path, const std::string& labe if (multi_user) { std::string obb_path = source_path + "/obb"; - fs_prepare_dir(obb_path.c_str(), 0775, uid, gid); + // Only attempt to prepare the /obb dir if it already exists. We want + // the legacy obb path "/data/media/obb" to be fixed up so that we can + // migrate it to its new location, but we don't want the directory to be + // created if it doesn't already exist. + struct stat sb; + if (TEMP_FAILURE_RETRY(lstat(obb_path.c_str(), &sb)) == 0) { + fs_prepare_dir(obb_path.c_str(), 0775, uid, gid); + } } exit(0);