Merge "Fix __cxa_atexit run-time regression with many registrations"
diff --git a/benchmarks/README.md b/benchmarks/README.md
index fe447d1..1fd17a1 100644
--- a/benchmarks/README.md
+++ b/benchmarks/README.md
@@ -184,5 +184,5 @@
Some devices have a `perf-setup.sh` script that locks CPU and GPU frequencies. Some TradeFed
benchmarks appear to be using the script. For more information:
* run `get_build_var BOARD_PERFSETUP_SCRIPT`
- * run `m perf-setup.sh` to install the script into `${OUT}/data/local/tmp/perf-setup.sh`
+ * run `m perf-setup` to install the script into `${OUT}/data/local/tmp/perf-setup.sh`
* see: https://android.googlesource.com/platform/platform_testing/+/refs/heads/master/scripts/perf-setup/
diff --git a/libc/bionic/icu.cpp b/libc/bionic/icu.cpp
index 72dac9b..c11b9d6 100644
--- a/libc/bionic/icu.cpp
+++ b/libc/bionic/icu.cpp
@@ -36,12 +36,12 @@
#include <async_safe/log.h>
-static void* g_libicuuc_handle = nullptr;
+static void* g_libicu_handle = nullptr;
static bool __find_icu() {
- g_libicuuc_handle = dlopen("libandroidicu.so", RTLD_LOCAL);
- if (g_libicuuc_handle == nullptr) {
- async_safe_format_log(ANDROID_LOG_ERROR, "bionic-icu", "couldn't open libandroidicu.so: %s",
+ g_libicu_handle = dlopen("libicu.so", RTLD_LOCAL);
+ if (g_libicu_handle == nullptr) {
+ async_safe_format_log(ANDROID_LOG_ERROR, "bionic-icu", "couldn't open libicu.so: %s",
dlerror());
return false;
}
@@ -53,14 +53,9 @@
static bool found_icu = __find_icu();
if (!found_icu) return nullptr;
- char versioned_symbol_name[strlen(symbol_name) + strlen("_android") + 1];
- snprintf(versioned_symbol_name, sizeof(versioned_symbol_name), "%s_android",
- symbol_name);
-
- void* symbol = dlsym(g_libicuuc_handle, versioned_symbol_name);
+ void* symbol = dlsym(g_libicu_handle, symbol_name);
if (symbol == nullptr) {
- async_safe_format_log(ANDROID_LOG_ERROR, "bionic-icu", "couldn't find %s",
- versioned_symbol_name);
+ async_safe_format_log(ANDROID_LOG_ERROR, "bionic-icu", "couldn't find %s", symbol_name);
}
return symbol;
}