projects
/
binutils-gdb.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Automatic date update in version.in
[binutils-gdb.git]
/
bfd
/
lynx-core.c
diff --git
a/bfd/lynx-core.c
b/bfd/lynx-core.c
index ef47c8359c732de06799612924703bc0572f26b9..ab6b1179e07415a6200477e27744695e99e606f3 100644
(file)
--- a/
bfd/lynx-core.c
+++ b/
bfd/lynx-core.c
@@
-1,5
+1,5
@@
/* BFD back end for Lynx core files
/* BFD back end for Lynx core files
- Copyright (C) 1993-202
0
Free Software Foundation, Inc.
+ Copyright (C) 1993-202
2
Free Software Foundation, Inc.
Written by Stu Grossman of Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
Written by Stu Grossman of Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
@@
-85,7
+85,7
@@
make_bfd_asection (bfd *abfd,
return asect;
}
return asect;
}
-const bfd_target *
+bfd_cleanup
lynx_core_file_p (bfd *abfd)
{
int secnum;
lynx_core_file_p (bfd *abfd)
{
int secnum;
@@
-126,24
+126,13
@@
lynx_core_file_p (bfd *abfd)
tcontext_size = pss.threadcnt * sizeof (core_st_t);
tcontext_size = pss.threadcnt * sizeof (core_st_t);
- /* Allocate space for the thread contexts */
-
- threadp = (core_st_t *) bfd_alloc (abfd, tcontext_size);
- if (!threadp)
- goto fail;
-
/* Save thread contexts */
/* Save thread contexts */
-
- if (bfd_seek (abfd, (file_ptr) pagesize, SEEK_SET) != 0)
+ if (bfd_seek (abfd, pagesize, SEEK_SET) != 0)
+ goto fail;
+ threadp = (core_st_t *) _bfd_alloc_and_read (abfd, tcontext_size,
+ tcontext_size);
+ if (!threadp)
goto fail;
goto fail;
-
- if (bfd_bread ((void *) threadp, tcontext_size, abfd) != tcontext_size)
- {
- /* Probably too small to be a core file */
- if (bfd_get_error () != bfd_error_system_call)
- bfd_set_error (bfd_error_wrong_format);
- goto fail;
- }
core_signal (abfd) = threadp->currsig;
core_signal (abfd) = threadp->currsig;
@@
-202,7
+191,7
@@
lynx_core_file_p (bfd *abfd)
goto fail;
}
goto fail;
}
- return
abfd->xvec
;
+ return
_bfd_no_cleanup
;
fail:
bfd_release (abfd, core_hdr (abfd));
fail:
bfd_release (abfd, core_hdr (abfd));