Merge "Ensure that __libc_init() never calls memset()." into main
diff --git a/linker/Android.bp b/linker/Android.bp
index d82e687..563cf3d 100644
--- a/linker/Android.bp
+++ b/linker/Android.bp
@@ -394,10 +394,6 @@
},
afdo: true,
-
- // FIXME: Workaround compat issue with obfuscation libraries.
- // http://b/352456802
- lto_O0: true,
}
// ========================================================
diff --git a/linker/linker_translate_path.cpp b/linker/linker_translate_path.cpp
index 4f3fdfb..b41669e 100644
--- a/linker/linker_translate_path.cpp
+++ b/linker/linker_translate_path.cpp
@@ -42,13 +42,13 @@
// Workaround for dlopen(/system/lib(64)/<soname>) when .so is in /apex. http://b/121248172
/**
* Translate /system path to /apex path if needed
- * The workaround should work only when targetSdkVersion < Q.
+ * The workaround should work only when targetSdkVersion < 29.
*
* param out_name_to_apex pointing to /apex path
* return true if translation is needed
*/
bool translateSystemPathToApexPath(const char* name, std::string* out_name_to_apex) {
- static constexpr const char* kPathTranslationQ[][2] = {
+ static constexpr const char* kPathTranslation[][2] = {
APEX_LIB("com.android.i18n", "libicui18n.so"),
APEX_LIB("com.android.i18n", "libicuuc.so")
};
@@ -59,10 +59,10 @@
auto comparator = [name](auto p) { return strcmp(name, p[0]) == 0; };
- if (get_application_target_sdk_version() < __ANDROID_API_Q__) {
+ if (get_application_target_sdk_version() < 29) {
if (auto it =
- std::find_if(std::begin(kPathTranslationQ), std::end(kPathTranslationQ), comparator);
- it != std::end(kPathTranslationQ)) {
+ std::find_if(std::begin(kPathTranslation), std::end(kPathTranslation), comparator);
+ it != std::end(kPathTranslation)) {
*out_name_to_apex = (*it)[1];
return true;
}
diff --git a/tests/grp_pwd_test.cpp b/tests/grp_pwd_test.cpp
index ddc0fc1..7b7e0e5 100644
--- a/tests/grp_pwd_test.cpp
+++ b/tests/grp_pwd_test.cpp
@@ -444,10 +444,9 @@
return result;
};
- // AID_UPROBESTATS (1093) was added in V, but "trunk stable" means
- // that the 2024Q builds don't have branches like the QPR builds used
- // to, and are tested with the _previous_ release's CTS.
- if (android::base::GetIntProperty("ro.build.version.sdk", 0) == __ANDROID_API_U__) {
+ // AID_UPROBESTATS (1093) was added in API level 35, but "trunk stable" means
+ // that the 2024Q* builds are tested with the _previous_ release's CTS.
+ if (android::base::GetIntProperty("ro.build.version.sdk", 0) == 34) {
#if !defined(AID_UPROBESTATS)
#define AID_UPROBESTATS 1093
#endif
@@ -457,10 +456,9 @@
EXPECT_STREQ(getpwuid(AID_UPROBESTATS)->pw_name, "uprobestats");
}
}
- // AID_VIRTUALMACHINE (3013) was added in V, but "trunk stable" means
- // that the 2024Q builds don't have branches like the QPR builds used
- // to, and are tested with the _previous_ release's CTS.
- if (android::base::GetIntProperty("ro.build.version.sdk", 0) == __ANDROID_API_U__) {
+ // AID_VIRTUALMACHINE (3013) was added in API level 35, but "trunk stable" means
+ // that the 2024Q* builds are tested with the _previous_ release's CTS.
+ if (android::base::GetIntProperty("ro.build.version.sdk", 0) == 34) {
#if !defined(AID_VIRTUALMACHINE)
#define AID_VIRTUALMACHINE 3013
#endif
@@ -470,6 +468,18 @@
EXPECT_STREQ(getpwuid(AID_VIRTUALMACHINE)->pw_name, "virtualmachine");
}
}
+ // AID_CROS_EC (1094) was added in API level 36, but "trunk stable" means
+ // that the 2024Q* builds are tested with the _previous_ release's CTS.
+ if (android::base::GetIntProperty("ro.build.version.sdk", 0) == 35) {
+#if !defined(AID_CROS_EC)
+#define AID_CROS_EC 1094
+#endif
+ ids.erase(AID_CROS_EC);
+ expected_ids.erase(AID_CROS_EC);
+ if (getpwuid(AID_CROS_EC)) {
+ EXPECT_STREQ(getpwuid(AID_CROS_EC)->pw_name, "cros_ec");
+ }
+ }
EXPECT_EQ(expected_ids, ids) << return_differences();
}