From 14e20e643515d4e7171f54e6d2fb78cf784f7d10 Mon Sep 17 00:00:00 2001 From: ptitSeb Date: Fri, 28 Apr 2023 17:13:37 +0200 Subject: Fix for local library open using dlopen that are then promoted to global with another dlopen (help java 17, probably other too) --- src/include/librarian.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/include') diff --git a/src/include/librarian.h b/src/include/librarian.h index 2ff059df..6219f00c 100755 --- a/src/include/librarian.h +++ b/src/include/librarian.h @@ -25,6 +25,8 @@ int AddNeededLib(lib_t* maplib, int local, int bindnow, needed_libs_t* needed, b void RemoveNeededLib(lib_t* maplib, int local, needed_libs_t* needed, box64context_t* box64, x64emu_t* emu); library_t* GetLibMapLib(lib_t* maplib, const char* name); library_t* GetLibInternal(const char* name); +void promoteLocalLibGlobal(library_t* lib); +int isLibLocal(library_t* lib); uintptr_t FindGlobalSymbol(lib_t *maplib, const char* name, int version, const char* vername); int GetNoSelfSymbolStartEnd(lib_t *maplib, const char* name, uintptr_t* start, uintptr_t* end, elfheader_t* self, size_t size, int version, const char* vername, const char* globdefver, const char* weakdefver); int GetGlobalSymbolStartEnd(lib_t *maplib, const char* name, uintptr_t* start, uintptr_t* end, elfheader_t *self, int version, const char* vername, const char* globdefver, const char* weakdefver); -- cgit 1.4.1