summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2022-08-06 17:36:32 +0930
committerAlan Modra <amodra@gmail.com>2022-08-06 18:43:24 +0930
commit431d48ef288983b62df2afb435dc8c6101a34cf8 (patch)
tree1d1d49e0f1425c6beaf20d2a6feb01496f4a0343
parentf7a559d5e11c5c023554b48b661aabbcc2c87cb8 (diff)
asan: segfault in coff_write_auxent_fname
More fuzzed input file nonsense. * coffgen.c (coff_write_symbol): Don't call coff_write_auxent_fname when extrap is NULL.
-rw-r--r--bfd/coffgen.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/bfd/coffgen.c b/bfd/coffgen.c
index 07b3fb446a..4d2b82e4a6 100644
--- a/bfd/coffgen.c
+++ b/bfd/coffgen.c
@@ -1058,7 +1058,8 @@ coff_write_symbol (bfd *abfd,
/* Adjust auxent only if this isn't the filename
auxiliary entry. */
if (native->u.syment.n_sclass == C_FILE
- && (native + j + 1)->u.auxent.x_file.x_ftype)
+ && (native + j + 1)->u.auxent.x_file.x_ftype
+ && (native + j + 1)->extrap)
coff_write_auxent_fname (abfd, (char *) (native + j + 1)->extrap,
&(native + j + 1)->u.auxent, strtab, hash);