aboutsummaryrefslogtreecommitdiff
path: root/bfd/versados.c
diff options
context:
space:
mode:
Diffstat (limited to 'bfd/versados.c')
-rw-r--r--bfd/versados.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/bfd/versados.c b/bfd/versados.c
index 297bbe6..684c3db 100644
--- a/bfd/versados.c
+++ b/bfd/versados.c
@@ -612,6 +612,7 @@ versados_object_p (abfd)
{
struct ext_vheader ext;
unsigned char len;
+ tdata_type *tdata_save;
if (bfd_seek (abfd, (file_ptr) 0, SEEK_SET) != 0)
return NULL;
@@ -642,9 +643,12 @@ versados_object_p (abfd)
/* OK, looks like a record, build the tdata and read in. */
- if (!versados_mkobject (abfd)
- || !versados_scan (abfd))
- return NULL;
+ tdata_save = abfd->tdata.versados_data;
+ if (!versados_mkobject (abfd) || !versados_scan (abfd))
+ {
+ abfd->tdata.versados_data = tdata_save;
+ return NULL;
+ }
return abfd->xvec;
}