PR binutils/630

* nlmconv.c (main): Only store the basename of the output filename in the
module table.
This commit is contained in:
Nick Clifton 2005-01-04 15:47:38 +00:00
parent 5f81b918e0
commit 8b626bcf2c
2 changed files with 23 additions and 11 deletions

View File

@ -1,3 +1,9 @@
2005-01-04 Armin Diehl <diehl@nordrhein.de>
PR binutils/630
* nlmconv.c (main): Only store the basename of the output filename
in the module table.
2005-01-04 H.J. Lu <hongjiu.lu@intel.com>
BZ 615

View File

@ -1057,18 +1057,24 @@ main (int argc, char **argv)
sharedhdr.exitProcedureOffset;
free (data);
}
len = strlen (output_file);
if (len > NLM_MODULE_NAME_SIZE - 2)
len = NLM_MODULE_NAME_SIZE - 2;
nlm_fixed_header (outbfd)->moduleName[0] = len;
strncpy (nlm_fixed_header (outbfd)->moduleName + 1, output_file,
NLM_MODULE_NAME_SIZE - 2);
nlm_fixed_header (outbfd)->moduleName[NLM_MODULE_NAME_SIZE - 1] = '\0';
for (modname = nlm_fixed_header (outbfd)->moduleName;
*modname != '\0';
modname++)
*modname = TOUPPER (*modname);
{
const int max_len = NLM_MODULE_NAME_SIZE - 2;
const char * filename = lbasename (output_file);
len = strlen (filename);
if (len > max_len)
len = max_len;
nlm_fixed_header (outbfd)->moduleName[0] = len;
strncpy (nlm_fixed_header (outbfd)->moduleName + 1, filename, max_len);
nlm_fixed_header (outbfd)->moduleName[max_len + 1] = '\0';
for (modname = nlm_fixed_header (outbfd)->moduleName;
*modname != '\0';
modname++)
*modname = TOUPPER (*modname);
}
strncpy (nlm_variable_header (outbfd)->oldThreadName, " LONG",
NLM_OLD_THREAD_NAME_LENGTH);