Mail Archives: cygwin/2000/09/14/20:51:27
Oops, I meant this patch, which should also fix the NONAME bug:
Index: pe-dll.c
===================================================================
RCS file: /cvs/src/src/ld/pe-dll.c,v
retrieving revision 1.14
diff -p -2 -r1.14 pe-dll.c
*** pe-dll.c 2000/07/19 00:04:04 1.14
--- pe-dll.c 2000/09/15 00:48:59
*************** fill_edata (abfd, info)
*** 704,720 ****
+ ssec->output_section->vma
+ ssec->output_offset);
! bfd_put_32 (abfd, srva - image_base, (void *) (eaddresses + i));
if (!pe_def_file->exports[s].flag_noname)
{
char *ename = pe_def_file->exports[s].name;
bfd_put_32 (abfd, ERVA (enamestr), (void *) enameptrs);
strcpy (enamestr, ename);
enamestr += strlen (enamestr) + 1;
! bfd_put_16 (abfd, i, (void *) eordinals);
! enameptrs++;
pe_def_file->exports[s].hint = hint++;
}
- eordinals++;
}
}
--- 704,722 ----
+ ssec->output_section->vma
+ ssec->output_offset);
+ int ord = pe_def_file->exports[s].ordinal;
! bfd_put_32 (abfd, srva - image_base,
! (void *) (eaddresses + ord - min_ordinal));
if (!pe_def_file->exports[s].flag_noname)
{
char *ename = pe_def_file->exports[s].name;
bfd_put_32 (abfd, ERVA (enamestr), (void *) enameptrs);
+ enameptrs++;
strcpy (enamestr, ename);
enamestr += strlen (enamestr) + 1;
! bfd_put_16 (abfd, ord, (void *) eordinals);
! eordinals++;
pe_def_file->exports[s].hint = hint++;
}
}
}
--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com
- Raw text -