X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=AcessNative%2Fld-acess_src%2Felf.c;h=daea0443ce732e074093b51e5f0be241cc1cace8;hb=a6f11cb266052c58ae7e2d6d6e8abd34a9e93214;hp=c01d24d42d3393a0093f73386f0749702158663b;hpb=a2b49f92646ef666e17172faf72a9dcc0d18942a;p=tpg%2Facess2.git diff --git a/AcessNative/ld-acess_src/elf.c b/AcessNative/ld-acess_src/elf.c index c01d24d4..daea0443 100644 --- a/AcessNative/ld-acess_src/elf.c +++ b/AcessNative/ld-acess_src/elf.c @@ -2,7 +2,7 @@ * Acess v0.1 * ELF Executable Loader Code */ -#define DEBUG 1 +#define DEBUG 0 #include #include #include @@ -108,8 +108,8 @@ void *Elf_Load(int FD) continue; if( phtab[i].VAddr < base ) base = phtab[i].VAddr; - if( phtab[i].VAddr > max ) - max = phtab[i].VAddr; + if( phtab[i].VAddr + phtab[i].MemSize > max ) + max = phtab[i].VAddr + phtab[i].MemSize; } LOG("base = %08x, max = %08x\n", base, max); @@ -492,6 +492,8 @@ int Elf_GetSymbol(void *Base, char *Name, uintptr_t *ret) pBuckets = PTR(hdr->misc.HashTable); symtab = PTR(hdr->misc.SymTable); +// LOG("Base = %p : pBuckets = %p, symtab = %p\n", Base, pBuckets, symtab); + if(!pBuckets || !symtab) return 0;