mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2025-02-17 13:10:12 +08:00
2012-04-17 Tristan Gingold <gingold@adacore.com>
* vms-lib.c (_bfd_vms_lib_get_module): Append .obj extension to member of an object archive.<
This commit is contained in:
parent
d22260241b
commit
da03bf4d5b
@ -1,3 +1,8 @@
|
||||
2012-04-17 Tristan Gingold <gingold@adacore.com>
|
||||
|
||||
* vms-lib.c (_bfd_vms_lib_get_module): Append .obj extension to
|
||||
member of an object archive.<
|
||||
|
||||
2012-04-17 Tristan Gingold <gingold@adacore.com>
|
||||
|
||||
* vms-lib.c (MAX_EKEYLEN): Define.
|
||||
|
@ -1296,6 +1296,7 @@ _bfd_vms_lib_get_module (bfd *abfd, unsigned int modidx)
|
||||
struct lib_tdata *tdata = bfd_libdata (abfd);
|
||||
bfd *res;
|
||||
file_ptr file_off;
|
||||
char *name;
|
||||
|
||||
/* Sanity check. */
|
||||
if (modidx >= tdata->nbr_modules)
|
||||
@ -1357,7 +1358,25 @@ _bfd_vms_lib_get_module (bfd *abfd, unsigned int modidx)
|
||||
res->origin = file_off + tdata->mhd_size;
|
||||
}
|
||||
|
||||
res->filename = tdata->modules[modidx].name;
|
||||
/* Set filename. */
|
||||
name = tdata->modules[modidx].name;
|
||||
switch (tdata->type)
|
||||
{
|
||||
case LBR__C_TYP_IOBJ:
|
||||
case LBR__C_TYP_EOBJ:
|
||||
/* For object archives, append .obj to mimic standard behaviour. */
|
||||
{
|
||||
size_t namelen = strlen (name);
|
||||
char *name1 = bfd_alloc (res, namelen + 4 + 1);
|
||||
memcpy (name1, name, namelen);
|
||||
strcpy (name1 + namelen, ".obj");
|
||||
name = name1;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
res->filename = name;
|
||||
|
||||
tdata->cache[modidx] = res;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user