aboutsummaryrefslogtreecommitdiff
path: root/bfd/vms-alpha.c
diff options
context:
space:
mode:
Diffstat (limited to 'bfd/vms-alpha.c')
-rw-r--r--bfd/vms-alpha.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/bfd/vms-alpha.c b/bfd/vms-alpha.c
index 92bf444..255a100 100644
--- a/bfd/vms-alpha.c
+++ b/bfd/vms-alpha.c
@@ -5106,7 +5106,14 @@ alpha_vms_slurp_relocs (bfd *abfd)
(*_bfd_error_handler) (_("Invalid section index in ETIR"));
return FALSE;
}
+
sec = PRIV (sections)[cur_psect];
+ if (sec == bfd_abs_section_ptr)
+ {
+ (*_bfd_error_handler) (_("Relocation for non-REL psect"));
+ return FALSE;
+ }
+
vms_sec = vms_section_data (sec);
/* Allocate a reloc entry. */
@@ -5117,7 +5124,7 @@ alpha_vms_slurp_relocs (bfd *abfd)
vms_sec->reloc_max = 64;
sec->relocation = bfd_zmalloc
(vms_sec->reloc_max * sizeof (arelent));
- }
+ }
else
{
vms_sec->reloc_max *= 2;