diff options
author | Alan Modra <amodra@gmail.com> | 2020-08-28 21:45:49 +0930 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2020-08-28 21:59:29 +0930 |
commit | 7ca371dba5d612ff1cdaa4ffe33474c1993fbe7f (patch) | |
tree | 5b2f3965c24591eed626395018170690c36a63c3 | |
parent | 1e597a89971e781f5c33d75009b2cbf26323d2a5 (diff) | |
download | gdb-7ca371dba5d612ff1cdaa4ffe33474c1993fbe7f.zip gdb-7ca371dba5d612ff1cdaa4ffe33474c1993fbe7f.tar.gz gdb-7ca371dba5d612ff1cdaa4ffe33474c1993fbe7f.tar.bz2 |
PR26418 UBSAN: cache.c:386 null pointer fwrite
The previous "fix" tested the wrong value.
PR 26418
* ecofflink.c (WRITE): Really don't write zero size chunks.
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/ecofflink.c | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index bf082fc..805d156 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2020-08-28 Alan Modra <amodra@gmail.com> + + PR 26418 + * ecofflink.c (WRITE): Really don't write zero size chunks. + 2020-08-28 Tuckker <tuckkern+sourceware@gmail.com> PR 26543 diff --git a/bfd/ecofflink.c b/bfd/ecofflink.c index 7c9a7ae..e8c3f9f 100644 --- a/bfd/ecofflink.c +++ b/bfd/ecofflink.c @@ -1491,7 +1491,7 @@ bfd_ecoff_write_debug (bfd *abfd, #define WRITE(ptr, count, size, offset) \ BFD_ASSERT (symhdr->offset == 0 \ || (bfd_vma) bfd_tell (abfd) == symhdr->offset); \ - if (size != 0 \ + if (symhdr->count != 0 \ && bfd_bwrite (debug->ptr, \ (bfd_size_type) size * symhdr->count, \ abfd) != size * symhdr->count) \ |