On Jan 26 01:08, szgyg wrote: > On 1/24/2013 1:29 PM, Corinna Vinschen wrote: > >On Jan 24 11:41, marco atzeri wrote: > >>On 1/24/2013 10:39 AM, Corinna Vinschen wrote: > >>>I debugged this last week, and I don't see how this could be a rebase > >>>bug. [...] To me this indicates a bug in objcopy. > > Strip copies the whole .reloc section, including entries for removed > debug sections. This is documented in rebase/README. Rebase checks > for this condition in Relocations::relocate and silently ignores > wrong entries. Well, except in Marco's dict_snowball.dll. > > Btw, > >>>The size of the .reloc section in the file header does not indicate how > >>>long the relocation information in the section actually is. Usually the > >>>section is larger than the actual relocation info. The end of the > >>>relocation info is indicated by a block header with a base offset of 0 > >>>and a sizeof of 0, let's call it the NULL block. > > VirtualSize (offset 8 in section header) should be exact. There are > no terminator zero block, but can be zero section padding. > VirtualSize + padding = SizeOfRawData.
Are you implying that rebase (or better: the included imagehelper lib) is doing the right thing, or not? The size of the reloc section is taken from SizeOfRawData. Relocations::check checks if the data is within a valid section. I just don't see what it's doing wrong there. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Maintainer cygwin AT cygwin DOT com Red Hat
