git.ucc.asn.au
/
tpg
/
acess2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fixing vsnprintf behavior on 64-bit systems
[tpg/acess2.git]
/
Kernel
/
bin
/
elf.c
diff --git
a/Kernel/bin/elf.c
b/Kernel/bin/elf.c
index
731d151
..
c524cf8
100644
(file)
--- a/
Kernel/bin/elf.c
+++ b/
Kernel/bin/elf.c
@@
-9,7
+9,6
@@
\r
#define DEBUG_WARN 1
\r
\r
\r
#define DEBUG_WARN 1
\r
\r
-
\r
// === PROTOTYPES ===
\r
tBinary *Elf_Load(int fp);
\r
int Elf_Relocate(void *Base);
\r
// === PROTOTYPES ===
\r
tBinary *Elf_Load(int fp);
\r
int Elf_Relocate(void *Base);
\r
@@
-35,7
+34,7
@@
tBinary *Elf_Load(int fp)
int iPageCount;
\r
int count;
\r
\r
int iPageCount;
\r
int count;
\r
\r
- ENTER("
i
fp", fp);
\r
+ ENTER("
x
fp", fp);
\r
\r
// Read ELF Header
\r
VFS_Read(fp, sizeof(hdr), &hdr);
\r
\r
// Read ELF Header
\r
VFS_Read(fp, sizeof(hdr), &hdr);
\r
@@
-126,13
+125,15
@@
tBinary *Elf_Load(int fp)
LOG("phtab[%i] = {VAddr:0x%x,Offset:0x%x,FileSize:0x%x}",
\r
i, phtab[i].VAddr, phtab[i].Offset, phtab[i].FileSize);
\r
\r
LOG("phtab[%i] = {VAddr:0x%x,Offset:0x%x,FileSize:0x%x}",
\r
i, phtab[i].VAddr, phtab[i].Offset, phtab[i].FileSize);
\r
\r
- if( (phtab[i].FileSize & 0xFFF) < 0x1000 - (phtab[i].VAddr & 0xFFF) )
\r
-
lastSize = phtab[i].FileSize;
\r
- else
\r
+
//
if( (phtab[i].FileSize & 0xFFF) < 0x1000 - (phtab[i].VAddr & 0xFFF) )
\r
+
//
lastSize = phtab[i].FileSize;
\r
+
//
else
\r
lastSize = (phtab[i].FileSize & 0xFFF) + (phtab[i].VAddr & 0xFFF);
\r
lastSize = (phtab[i].FileSize & 0xFFF) + (phtab[i].VAddr & 0xFFF);
\r
- lastSize &= 0xFFF;
\r
+ //lastSize &= 0xFFF;
\r
+
\r
+ //LOG("lastSize = 0x%x", lastSize);
\r
\r
\r
-
LOG("lastSize = 0x%x", lastSize)
;
\r
+
lastSize = phtab[i].FileSize
;
\r
\r
// Get Pages
\r
count = ( (phtab[i].VAddr&0xFFF) + phtab[i].FileSize + 0xFFF) >> 12;
\r
\r
// Get Pages
\r
count = ( (phtab[i].VAddr&0xFFF) + phtab[i].FileSize + 0xFFF) >> 12;
\r
@@
-152,6
+153,7
@@
tBinary *Elf_Load(int fp)
ret->Pages[j+k].Size = 4096;
\r
LOG("ret->Pages[%i].Size = 0x%x", j+k, ret->Pages[j+k].Size);
\r
ret->Pages[j+k].Flags = 0;
\r
ret->Pages[j+k].Size = 4096;
\r
LOG("ret->Pages[%i].Size = 0x%x", j+k, ret->Pages[j+k].Size);
\r
ret->Pages[j+k].Flags = 0;
\r
+ lastSize -= ret->Pages[j+k].Size;
\r
}
\r
count = (phtab[i].MemSize + 0xFFF) >> 12;
\r
for(;k<count;k++)
\r
}
\r
count = (phtab[i].MemSize + 0xFFF) >> 12;
\r
for(;k<count;k++)
\r
UCC
git Repository :: git.ucc.asn.au