rem: memset(eo->sections,(hdr->e_shnum+1)*sizeof(void *),0);
add: memset(eo->sections,0,(hdr->e_shnum+1)*sizeof(void *));
context: static BOOL loadelf32(struct ElfObject *eo,struct Elf32_Shdr *shdrs)/* parse ELF object, initialize ElfObject structure */{  struct Elf32_Ehdr *hdr = eo->header;  struct ELFSection *s;  uint16 i;  if ((eo->secnames = readsection(eo,&shdrs[hdr->e_shstrndx])) &&      (eo->sections = alloc32((hdr->e_shnum+1)*sizeof(void *)))) {    memset(eo->sections,(hdr->e_shnum+1)*sizeof(void *),0);    eo->nsects = hdr->e_shnum + 1;  /* +1 section for COMMON symbols */    for (i=1; i<hdr->e_shnum; i++) {      switch (shdrs[i].sh_type) {        case SHT_PROGBITS:        case SHT_NOBITS:          if (!(eo->sections[i] = progsection(eo,&shdrs[i])))            return (FALSE);          break;        case SHT_SYMTAB:          if (!(eo->symnames = readsection(eo,&shdrs[shdrs[i].sh_link]))              || !(eo->symtab = readsection(eo,&shdrs[i])))            return (FALSE);          eo->nsyms = shdrs[i].sh_size / sizeof(struct Elf32_Sym);          eo->gsyms = shdrs[i].sh_info;          break;        default:          break;      }    }    for (i=1; i<hdr->e_shnum; i++) {      switch (shdrs[i].sh_type) {        case SHT_REL:        case SHT_RELA:          if (!getrelocs(eo,&shdrs[i]))            return (FALSE);          break;        default:          break;      }    }    /* allocate space for Common symbols */    return (common_symbols(eo));  }  return (FALSE);}