diff options
author | Dmitriy Ivanov <dimitry@google.com> | 2014-09-12 16:55:42 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2014-09-12 16:55:42 +0000 |
commit | d74aa580354037b9972524e9d654c0a336974838 (patch) | |
tree | 189b7fade3764e5105c37bc53b5366e15037fd53 /linker | |
parent | aad92067bf4eecda81a4c331ee4dec70483c5104 (diff) | |
parent | a6ac54a215d6b64f5cc5a59b66c1dbfbb41ea9f5 (diff) | |
download | bionic-d74aa580354037b9972524e9d654c0a336974838.zip bionic-d74aa580354037b9972524e9d654c0a336974838.tar.gz bionic-d74aa580354037b9972524e9d654c0a336974838.tar.bz2 |
Merge "Fix unload of recursively linked library"
Diffstat (limited to 'linker')
-rw-r--r-- | linker/linker.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/linker/linker.cpp b/linker/linker.cpp index 2e7e57e..6589684 100644 --- a/linker/linker.cpp +++ b/linker/linker.cpp @@ -839,6 +839,7 @@ static soinfo* load_library(LoadTaskList& load_tasks, const char* name, int dlfl } if ((dlflags & RTLD_NOLOAD) != 0) { + DL_ERR("library \"%s\" wasn't loaded and RTLD_NOLOAD prevented it", name); return nullptr; } @@ -946,7 +947,6 @@ static bool find_libraries(const char* const library_names[], size_t library_nam soinfo* needed_by = task->get_needed_by(); if (is_recursive(si, needed_by)) { - soinfo_free(si); return false; } |