From: Alan Modra Date: Mon, 20 Apr 2026 06:09:39 +0000 (+0930) Subject: gas: segfault in out_debug_str X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f2830d95872ebd4234e66f87ec4eb3f73f2d079e;p=thirdparty%2Fbinutils-gdb.git gas: segfault in out_debug_str Another fuzzer fix. I don't care to emit diagnostics for silly input, so haven't done so here. * dwarf2dbg.c (out_debug_str): Don't segfault on NULL file name. --- diff --git a/gas/dwarf2dbg.c b/gas/dwarf2dbg.c index c9057213118..7b338bb11cd 100644 --- a/gas/dwarf2dbg.c +++ b/gas/dwarf2dbg.c @@ -3058,9 +3058,14 @@ out_debug_str (segT str_seg, symbolS **name_sym, symbolS **comp_dir_sym, #endif free (dirname); } - len = strlen (files[first_file].filename) + 1; - p = frag_more (len); - memcpy (p, files[first_file].filename, len); + if (files[first_file].filename) + { + len = strlen (files[first_file].filename) + 1; + p = frag_more (len); + memcpy (p, files[first_file].filename, len); + } + else + frag_append_1_char (0); /* DW_AT_comp_dir */ *comp_dir_sym = symbol_temp_new_now_octets ();