Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 767c2ba7 authored by rickywai's avatar rickywai Committed by Gerrit Code Review
Browse files

Merge "Check the data directory before mount tmpfs"

parents b4bcc859 ed36545f
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -202,6 +202,8 @@ static constexpr unsigned int STORAGE_DIR_CHECK_MAX_INTERVAL_US = 1000;
 */
static constexpr int STORAGE_DIR_CHECK_TIMEOUT_US = 1000 * 1000 * 60 * 5;

static void WaitUntilDirReady(const std::string& target, fail_fn_t fail_fn);

/**
 * A helper class containing accounting information for USAPs.
 */
@@ -1249,7 +1251,11 @@ static void isolateAppData(JNIEnv* env, const std::vector<std::string>& merged_d
    auto volPath = StringPrintf("%s/%s", externalPrivateMountPath, ent->d_name);
    auto cePath = StringPrintf("%s/user", volPath.c_str());
    auto dePath = StringPrintf("%s/user_de", volPath.c_str());
    // Wait until dir user is created.
    WaitUntilDirReady(cePath.c_str(), fail_fn);
    MountAppDataTmpFs(cePath.c_str(), fail_fn);
    // Wait until dir user_de is created.
    WaitUntilDirReady(dePath.c_str(), fail_fn);
    MountAppDataTmpFs(dePath.c_str(), fail_fn);
  }
  closedir(dir);