PR26412 UBSAN: objcopy.c:3026 null pointer fwrite
PR 26412 * objcopy.c (copy_object): Don't fwrite NULL contents.
This commit is contained in:
parent
4449c81a85
commit
a68aba2da7
2 changed files with 8 additions and 2 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2020-08-26 Alan Modra <amodra@gmail.com>
|
||||||
|
|
||||||
|
PR 26412
|
||||||
|
* objcopy.c (copy_object): Don't fwrite NULL contents.
|
||||||
|
|
||||||
2020-08-26 Katayama Hirofumi <katayama.hirofumi.mz@gmail.com>
|
2020-08-26 Katayama Hirofumi <katayama.hirofumi.mz@gmail.com>
|
||||||
|
|
||||||
PR 26340
|
PR 26340
|
||||||
|
|
|
@ -3011,7 +3011,8 @@ copy_object (bfd *ibfd, bfd *obfd, const bfd_arch_info_type *input_arch)
|
||||||
}
|
}
|
||||||
|
|
||||||
bfd_size_type size = bfd_section_size (osec);
|
bfd_size_type size = bfd_section_size (osec);
|
||||||
/* Note - we allow the dumping of zero-sized sections. */
|
/* Note - we allow the dumping of zero-sized sections,
|
||||||
|
creating an empty file. */
|
||||||
|
|
||||||
f = fopen (pdump->filename, FOPEN_WB);
|
f = fopen (pdump->filename, FOPEN_WB);
|
||||||
if (f == NULL)
|
if (f == NULL)
|
||||||
|
@ -3023,7 +3024,7 @@ copy_object (bfd *ibfd, bfd *obfd, const bfd_arch_info_type *input_arch)
|
||||||
|
|
||||||
if (bfd_malloc_and_get_section (ibfd, osec, &contents))
|
if (bfd_malloc_and_get_section (ibfd, osec, &contents))
|
||||||
{
|
{
|
||||||
if (fwrite (contents, 1, size, f) != size)
|
if (size != 0 && fwrite (contents, 1, size, f) != size)
|
||||||
{
|
{
|
||||||
non_fatal (_("error writing section contents to %s (error: %s)"),
|
non_fatal (_("error writing section contents to %s (error: %s)"),
|
||||||
pdump->filename,
|
pdump->filename,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue