X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=AcessNative%2Fld-acess_src%2Fbinary.c;h=d04ac6d2504026c0f93de0ae832cb2793e543f46;hb=03522f70735d2db32e52e2fd5388439570ab0d0f;hp=623543188936465e70e93b99127506c06670a829;hpb=6d6b367c4f5e413a9e4135d9f5c40077c3724525;p=tpg%2Facess2.git diff --git a/AcessNative/ld-acess_src/binary.c b/AcessNative/ld-acess_src/binary.c index 62354318..d04ac6d2 100644 --- a/AcessNative/ld-acess_src/binary.c +++ b/AcessNative/ld-acess_src/binary.c @@ -1,7 +1,11 @@ /* - * AcessNative + * AcessNative Dynamic Linker + * - By John Hodge (thePowersGang) + * + * binary.c + * - Provides binary loading and type abstraction */ -#define DEBUG 1 +#define DEBUG 0 #include "common.h" #include #include @@ -24,6 +28,7 @@ extern uintptr_t ElfRelocate(void *Base); extern int ElfGetSymbol(void *Base, char *Name, uintptr_t *ret, size_t *size); extern int ciNumBuiltinSymbols; extern tSym caBuiltinSymbols[]; +extern char **gEnvP; // === PROTOTYPES === void Binary_AddToList(const char *Filename, void *Base, tBinFmt *Format); @@ -109,7 +114,8 @@ void *Binary_LoadLibrary(const char *Name) } ret = Binary_Load(path, (uintptr_t*)&entry); - printf("LOADED '%s' to %p (Entry=%p)\n", path, ret, entry); + if( ret != (void*)-1 ) + Debug("LOADED '%s' to %p (Entry=%p)", path, ret, entry); free(path); #if DEBUG @@ -120,7 +126,7 @@ void *Binary_LoadLibrary(const char *Name) #if DEBUG printf("Calling '%s' entry point %p\n", Name, entry); #endif - entry(ret, 0, argv, NULL); + entry(ret, 0, argv, gEnvP); } return ret;