diff --git a/init/property_service.cpp b/init/property_service.cpp index a1e955129..14e83f2b7 100644 --- a/init/property_service.cpp +++ b/init/property_service.cpp @@ -885,8 +885,12 @@ void property_load_boot_defaults(bool load_debug_prop) { load_properties_from_file("/system/build.prop", nullptr, &properties); load_properties_from_file("/vendor/default.prop", nullptr, &properties); load_properties_from_file("/vendor/build.prop", nullptr, &properties); - load_properties_from_file("/odm/default.prop", nullptr, &properties); - load_properties_from_file("/odm/build.prop", nullptr, &properties); + if (SelinuxGetVendorAndroidVersion() >= __ANDROID_API_Q__) { + load_properties_from_file("/odm/etc/build.prop", nullptr, &properties); + } else { + load_properties_from_file("/odm/default.prop", nullptr, &properties); + load_properties_from_file("/odm/build.prop", nullptr, &properties); + } load_properties_from_file("/product/build.prop", nullptr, &properties); load_properties_from_file("/product_services/build.prop", nullptr, &properties); load_properties_from_file("/factory/factory.prop", "ro.*", &properties); diff --git a/libcutils/fs_config.cpp b/libcutils/fs_config.cpp index 494a06f53..660603062 100644 --- a/libcutils/fs_config.cpp +++ b/libcutils/fs_config.cpp @@ -158,8 +158,9 @@ static const struct fs_path_config android_files[] = { { 00750, AID_ROOT, AID_SHELL, 0, "data/nativetest64/*" }, { 00600, AID_ROOT, AID_ROOT, 0, "default.prop" }, // legacy { 00600, AID_ROOT, AID_ROOT, 0, "system/etc/prop.default" }, - { 00600, AID_ROOT, AID_ROOT, 0, "odm/build.prop" }, - { 00600, AID_ROOT, AID_ROOT, 0, "odm/default.prop" }, + { 00600, AID_ROOT, AID_ROOT, 0, "odm/build.prop" }, // legacy; only for P release + { 00600, AID_ROOT, AID_ROOT, 0, "odm/default.prop" }, // legacy; only for P release + { 00600, AID_ROOT, AID_ROOT, 0, "odm/etc/build.prop" }, { 00444, AID_ROOT, AID_ROOT, 0, odm_conf_dir + 1 }, { 00444, AID_ROOT, AID_ROOT, 0, odm_conf_file + 1 }, { 00444, AID_ROOT, AID_ROOT, 0, oem_conf_dir + 1 },