This is the mail archive of the binutils-cvs@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] vms-alpha gas segfault


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=9ec2f606ce9ebfe9b7d1c6d3db0614d19bd03a6b

commit 9ec2f606ce9ebfe9b7d1c6d3db0614d19bd03a6b
Author: Alan Modra <amodra@gmail.com>
Date:   Wed May 22 18:00:16 2019 +0930

    vms-alpha gas segfault
    
    	* vms-alpha.c (_bfd_vms_write_etir): Don't attempt further
    	processing on "size error in section".

Diff:
---
 bfd/ChangeLog   | 5 +++++
 bfd/vms-alpha.c | 5 ++++-
 2 files changed, 9 insertions(+), 1 deletion(-)

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;


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]