forked from Imagelibrary/binutils-gdb
Stop the (optional) dialong control data from being aligned when parsing/writing windows resource files.
binutils* resbin.c: Optional dialog control data immediately follow the control description without alignment. * testsuite/binutils-all/windres/controldata.rc: New test. source. * testsuite/binutils-all/windres/controldata.rsd: New test.
This commit is contained in:
committed by
Nick Clifton
parent
01fabda4d4
commit
6bb21700ab
@@ -574,8 +574,6 @@ bin_to_res_dialog (windres_bfd *wrbfd, const bfd_byte *data, rc_uint_type length
|
||||
dc->data = NULL;
|
||||
else
|
||||
{
|
||||
off = (off + 3) &~ 3;
|
||||
|
||||
if (length < off + datalen)
|
||||
toosmall (_("dialog control data"));
|
||||
|
||||
@@ -1582,7 +1580,6 @@ res_to_bin_dialog (windres_bfd *wrbfd, rc_uint_type off, const rc_dialog *dialog
|
||||
{
|
||||
rc_uint_type saved_off = off;
|
||||
rc_uint_type old_off;
|
||||
off += (4 - ((off - off_delta) & 3)) & 3;
|
||||
|
||||
old_off = off;
|
||||
off = res_to_bin_rcdata (wrbfd, off, dc->data);
|
||||
@@ -1590,10 +1587,10 @@ res_to_bin_dialog (windres_bfd *wrbfd, rc_uint_type off, const rc_dialog *dialog
|
||||
old_off = off = saved_off;
|
||||
if (wrbfd)
|
||||
windres_put_16 (wrbfd, dc_rclen, off - old_off);
|
||||
}
|
||||
}
|
||||
if (wrbfd)
|
||||
set_windres_bfd_content (wrbfd, dc_rclen, marker, 2);
|
||||
}
|
||||
}
|
||||
|
||||
if (wrbfd)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user