about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2022-10-29 16:49:25 +0200
committerptitSeb <sebastien.chev@gmail.com>2022-10-29 16:49:25 +0200
commite394903ccfc7a25ea07d701ae37275fb9f4aa36b (patch)
tree17981cc593e572aede2269b59805301a77d8d2bc /src
parent98bb78ae3a34550212c6f68c8a11ba1daa855aae (diff)
downloadbox64-e394903ccfc7a25ea07d701ae37275fb9f4aa36b.tar.gz
box64-e394903ccfc7a25ea07d701ae37275fb9f4aa36b.zip
Better fix, again, for dlsym(RTLD_NEXT, ...)
Diffstat (limited to 'src')
-rwxr-xr-xsrc/librarian/librarian.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/librarian/librarian.c b/src/librarian/librarian.c
index 95687533..84b0b9a7 100755
--- a/src/librarian/librarian.c
+++ b/src/librarian/librarian.c
@@ -421,13 +421,13 @@ int GetNoSelfSymbolStartEnd(lib_t *maplib, const char* name, uintptr_t* start, u
                     weak = 1;
         }
         for(int i=0; i<go; ++i) {
-            if(GetElfIndex(maplib->libraries[i])==-1 || (my_context->elfs[GetElfIndex(maplib->libraries[i])]==self))
+            if(GetElfIndex(maplib->libraries[i])==-1 || (my_context->elfs[GetElfIndex(maplib->libraries[i])]!=self))
                 if(GetLibGlobalSymbolStartEnd(maplib->libraries[i], name, start, end, &weak, version, vername, 1))
                     if(*start)
                         return 1;
         }
         for(int i=0; i<go; ++i) {
-            if(GetElfIndex(maplib->libraries[i])==-1 || (my_context->elfs[GetElfIndex(maplib->libraries[i])]==self))
+            if(GetElfIndex(maplib->libraries[i])==-1 || (my_context->elfs[GetElfIndex(maplib->libraries[i])]!=self))
                 GetLibWeakSymbolStartEnd(maplib->libraries[i], name, start, end, &weak, version, vername, 1);
         }
     if(weak && *start)