summaryrefslogtreecommitdiff
path: root/bfd/opncls.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2012-11-06 09:31:10 +0000
committerAlan Modra <amodra@bigpond.net.au>2012-11-06 09:31:10 +0000
commit4e70690a4d87f4fe096d17c9e012cd621ed401a5 (patch)
treeb0e60ecc84fe9627858342997645278e5d7ff4c0 /bfd/opncls.c
parent1cc68fa2628bdb1a3ca92fc34afd0a372a420dd3 (diff)
downloadbinutils-redhat-4e70690a4d87f4fe096d17c9e012cd621ed401a5.tar.gz
PR binutils/14567
* opncls.c (opncls_iovec): Forward declare. (_bfd_new_bfd_contained_in): If using opncls_iovec, copy iostream to new bfd.
Diffstat (limited to 'bfd/opncls.c')
-rw-r--r--bfd/opncls.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/bfd/opncls.c b/bfd/opncls.c
index fdccba371e..8fd9ac86a9 100644
--- a/bfd/opncls.c
+++ b/bfd/opncls.c
@@ -107,6 +107,8 @@ _bfd_new_bfd (void)
return nbfd;
}
+static const struct bfd_iovec opncls_iovec;
+
/* Allocate a new BFD as a member of archive OBFD. */
bfd *
@@ -119,6 +121,8 @@ _bfd_new_bfd_contained_in (bfd *obfd)
return NULL;
nbfd->xvec = obfd->xvec;
nbfd->iovec = obfd->iovec;
+ if (obfd->iovec == &opncls_iovec)
+ nbfd->iostream = obfd->iostream;
nbfd->my_archive = obfd;
nbfd->direction = read_direction;
nbfd->target_defaulted = obfd->target_defaulted;