1
0
mirror of https://github.com/golang/go synced 2024-09-25 01:10:13 -06:00

ld: remove MachoLoad limit

Fixes #1571.

R=ken2
CC=golang-dev
https://golang.org/cl/4443052
This commit is contained in:
Russ Cox 2011-04-20 16:25:00 -04:00
parent e1ee3b5db6
commit 047e698c52

View File

@ -12,10 +12,10 @@
static int macho64;
static MachoHdr hdr;
static MachoLoad load[16];
static MachoLoad *load;
static MachoSeg seg[16];
static MachoDebug xdebug[16];
static int nload, nseg, ndebug, nsect;
static int nload, mload, nseg, ndebug, nsect;
void
machoinit(void)
@ -43,11 +43,18 @@ newMachoLoad(uint32 type, uint32 ndata)
{
MachoLoad *l;
if(nload >= nelem(load)) {
diag("too many loads");
errorexit();
if(nload >= mload) {
if(mload == 0)
mload = 1;
else
mload *= 2;
load = realloc(load, mload*sizeof load[0]);
if(load == nil) {
diag("out of memory");
errorexit();
}
}
if(macho64 && (ndata & 1))
ndata++;