am bd6b8497: Merge "Remove an unused parameter from the dlopen implementation."

* commit 'bd6b849754386a1befa2c935cde3110cadf422c6':
  Remove an unused parameter from the dlopen implementation.
This commit is contained in:
Elliott Hughes 2014-06-03 23:56:58 +00:00 committed by Android Git Automerger
commit d575c374d2
3 changed files with 6 additions and 10 deletions

View File

@ -65,10 +65,9 @@ void android_update_LD_LIBRARY_PATH(const char* ld_library_path) {
do_android_update_LD_LIBRARY_PATH(ld_library_path); do_android_update_LD_LIBRARY_PATH(ld_library_path);
} }
static void* dlopen_ext(const char* filename, int flags, const android_dlextinfo* extinfo, const void* caller_addr) { static void* dlopen_ext(const char* filename, int flags, const android_dlextinfo* extinfo) {
ScopedPthreadMutexLocker locker(&g_dl_mutex); ScopedPthreadMutexLocker locker(&g_dl_mutex);
soinfo* caller_soinfo = find_containing_library(caller_addr); soinfo* result = do_dlopen(filename, flags, extinfo);
soinfo* result = do_dlopen(filename, flags, caller_soinfo, extinfo);
if (result == NULL) { if (result == NULL) {
__bionic_format_dlerror("dlopen failed", linker_get_error_buffer()); __bionic_format_dlerror("dlopen failed", linker_get_error_buffer());
return NULL; return NULL;
@ -77,13 +76,11 @@ static void* dlopen_ext(const char* filename, int flags, const android_dlextinfo
} }
void* android_dlopen_ext(const char* filename, int flags, const android_dlextinfo* extinfo) { void* android_dlopen_ext(const char* filename, int flags, const android_dlextinfo* extinfo) {
void* caller_addr = __builtin_return_address(0); return dlopen_ext(filename, flags, extinfo);
return dlopen_ext(filename, flags, extinfo, caller_addr);
} }
void* dlopen(const char* filename, int flags) { void* dlopen(const char* filename, int flags) {
void* caller_addr = __builtin_return_address(0); return dlopen_ext(filename, flags, NULL);
return dlopen_ext(filename, flags, NULL, caller_addr);
} }
void* dlsym(void* handle, const char* symbol) { void* dlsym(void* handle, const char* symbol) {
@ -258,4 +255,3 @@ soinfo* get_libdl_info() {
return &__libdl_info; return &__libdl_info;
} }

View File

@ -827,7 +827,7 @@ void do_android_update_LD_LIBRARY_PATH(const char* ld_library_path) {
} }
} }
soinfo* do_dlopen(const char* name, int flags, soinfo* /*caller*/, const android_dlextinfo* extinfo) { soinfo* do_dlopen(const char* name, int flags, const android_dlextinfo* extinfo) {
if ((flags & ~(RTLD_NOW|RTLD_LAZY|RTLD_LOCAL|RTLD_GLOBAL|RTLD_NOLOAD)) != 0) { if ((flags & ~(RTLD_NOW|RTLD_LAZY|RTLD_LOCAL|RTLD_GLOBAL|RTLD_NOLOAD)) != 0) {
DL_ERR("invalid flags to dlopen: %x", flags); DL_ERR("invalid flags to dlopen: %x", flags);
return NULL; return NULL;

View File

@ -231,7 +231,7 @@ extern soinfo* get_libdl_info();
void do_android_get_LD_LIBRARY_PATH(char*, size_t); void do_android_get_LD_LIBRARY_PATH(char*, size_t);
void do_android_update_LD_LIBRARY_PATH(const char* ld_library_path); void do_android_update_LD_LIBRARY_PATH(const char* ld_library_path);
soinfo* do_dlopen(const char* name, int flags, soinfo* caller, const android_dlextinfo* extinfo); soinfo* do_dlopen(const char* name, int flags, const android_dlextinfo* extinfo);
void do_dlclose(soinfo* si); void do_dlclose(soinfo* si);
ElfW(Sym)* dlsym_linear_lookup(const char* name, soinfo** found, soinfo* start); ElfW(Sym)* dlsym_linear_lookup(const char* name, soinfo** found, soinfo* start);