aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2019-05-22 18:00:16 +0930
committerAlan Modra <amodra@gmail.com>2019-05-22 18:33:39 +0930
commit9ec2f606ce9ebfe9b7d1c6d3db0614d19bd03a6b (patch)
tree45ca1c65fcf79d80246bd818a089873cd4c26b22 /bfd
parent4decd602d8570eda5d36fd6cca2e50091000fa7a (diff)
downloadgdb-9ec2f606ce9ebfe9b7d1c6d3db0614d19bd03a6b.zip
gdb-9ec2f606ce9ebfe9b7d1c6d3db0614d19bd03a6b.tar.gz
gdb-9ec2f606ce9ebfe9b7d1c6d3db0614d19bd03a6b.tar.bz2
vms-alpha gas segfault
* vms-alpha.c (_bfd_vms_write_etir): Don't attempt further processing on "size error in section".
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/vms-alpha.c5
2 files changed, 9 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index af7ae75..4f523fa 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,10 @@
2019-05-22 Alan Modra <amodra@gmail.com>
+ * vms-alpha.c (_bfd_vms_write_etir): Don't attempt further
+ processing on "size error in section".
+
+2019-05-22 Alan Modra <amodra@gmail.com>
+
* som.c (som_bfd_free_cached_info): Call
_bfd_generic_close_and_cleanup.
diff --git a/bfd/vms-alpha.c b/bfd/vms-alpha.c
index d8b3082..4e6f9c1 100644
--- a/bfd/vms-alpha.c
+++ b/bfd/vms-alpha.c
@@ -4094,7 +4094,10 @@ _bfd_vms_write_etir (bfd * abfd, int objtype ATTRIBUTE_UNUSED)
{
/* Output rest of section. */
if (curr_addr > section->size)
- _bfd_error_handler (_("size error in section %pA"), section);
+ {
+ _bfd_error_handler (_("size error in section %pA"), section);
+ return FALSE;
+ }
size = section->size - curr_addr;
sto_imm (abfd, section, size, curr_data, curr_addr);
curr_data += size;