diff --git a/ld/ChangeLog b/ld/ChangeLog index 698b3ad12d..68f359de5b 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,9 @@ +2004-09-27 Filip Navara + + * emultempl/pe.em (gld_${EMULATION_NAME}_unrecognized_file): Allow + def_file_parse to handle pe_def_file if NULL and prevent crash with + invalid .def files. + 2004-09-27 Alan Modra * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Enable diff --git a/ld/emultempl/pe.em b/ld/emultempl/pe.em index 318eb7c2bf..9ff5c9c9b8 100644 --- a/ld/emultempl/pe.em +++ b/ld/emultempl/pe.em @@ -1293,10 +1293,7 @@ gld_${EMULATION_NAME}_unrecognized_file (lang_input_statement_type *entry ATTRIB if (strcmp (ext, ".def") == 0 || strcmp (ext, ".DEF") == 0) { - if (pe_def_file == 0) - pe_def_file = def_file_empty (); - - def_file_parse (entry->filename, pe_def_file); + pe_def_file = def_file_parse (entry->filename, pe_def_file); if (pe_def_file) {