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

Commit 5b817549 authored by Calin Juravle's avatar Calin Juravle Committed by Android (Google) Code Review
Browse files

Merge "Delete the entire profile directory when the app is uninstalled" into nyc-dev

parents 2376b4e1 caa6b809
Loading
Loading
Loading
Loading
+10 −3
Original line number Diff line number Diff line
@@ -222,6 +222,14 @@ int clear_app_data(const char *uuid, const char *pkgname, userid_t userid, int f
    return res;
}

static int destroy_app_profiles(const char *pkgname, userid_t userid) {
    // TODO: this doesn't destroy the marks for foreign dex use yet.
    int res = 0;
    res |= delete_dir_contents_and_dir(create_data_user_profile_package_path( userid, pkgname));
    res |= delete_dir_contents_and_dir(create_data_ref_profile_package_path(pkgname));
    return res;
}

int destroy_app_data(const char *uuid, const char *pkgname, userid_t userid, int flags) {
    int res = 0;
    if (flags & FLAG_STORAGE_CE) {
@@ -229,10 +237,9 @@ int destroy_app_data(const char *uuid, const char *pkgname, userid_t userid, int
                create_data_user_package_path(uuid, userid, pkgname));
    }
    if (flags & FLAG_STORAGE_DE) {
        // TODO: include result once 25796509 is fixed
        delete_dir_contents_and_dir(
        res |= delete_dir_contents_and_dir(
                create_data_user_de_package_path(uuid, userid, pkgname));
        unlink_all_profiles(pkgname);
        res |= destroy_app_profiles(pkgname, userid);
    }
    return res;
}