Commit 047e698c authored by Russ Cox's avatar Russ Cox

ld: remove MachoLoad limit

Fixes #1571.

R=ken2
CC=golang-dev
https://golang.org/cl/4443052
parent e1ee3b5d
......@@ -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++;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment