]> Shamusworld >> Repos - rmac/blobdiff - object.c
Small fix for spurious "out of range" errors (tied to 64-bit eval path).
[rmac] / object.c
index 522a4d918ce6bacc5d5b0bd0c3805a1867a3dd2c..9294abefa8ed3431323b1e80f839f60ba912ce7a 100644 (file)
--- a/object.c
+++ b/object.c
@@ -178,6 +178,7 @@ uint8_t * AddBSDSymEntry(uint8_t * buf, SYM * sym, int globflag)
 uint8_t * AddELFSymEntry(uint8_t * buf, SYM * sym, int globflag)
 {
        chptr = buf;
+       ch_size = 0;
        D_long(strindx);                // st_name
        D_long(sym->svalue);    // st_value
        D_long(0);                              // st_size
@@ -228,6 +229,7 @@ uint8_t * AddELFSymEntry(uint8_t * buf, SYM * sym, int globflag)
 int DepositELFSectionHeader(uint8_t * ptr, uint32_t name, uint32_t type, uint32_t flags, uint32_t addr, uint32_t offset, uint32_t size, uint32_t link, uint32_t info, uint32_t addralign, uint32_t entsize)
 {
        chptr = ptr;
+       ch_size = 0;
        D_long(name);
        D_long(type);
        D_long(flags);
@@ -263,6 +265,7 @@ printf("DepositELFSHSTEntry: s = \"%s\"\n", s);
 uint32_t DepositELFSymbol(uint8_t * ptr, uint32_t name, uint32_t addr, uint32_t size, uint8_t info, uint8_t other, uint16_t shndx)
 {
        chptr = ptr;
+       ch_size = 0;
        D_long(name);
        D_long(addr);
        D_long(size);