aboutsummaryrefslogtreecommitdiff
path: root/bfd/mach-o.c
diff options
context:
space:
mode:
authorTristan Gingold <gingold@adacore.com>2012-01-04 13:31:27 +0000
committerTristan Gingold <gingold@adacore.com>2012-01-04 13:31:27 +0000
commit15bbba8d0de01910ed3ccf46647a3d4525fc4848 (patch)
tree787a44db2ebbc6795f56561540f3de2978d4ad1c /bfd/mach-o.c
parenta4e241ca1b734fe79981ee40980e1ea44bb1e17b (diff)
downloadgdb-15bbba8d0de01910ed3ccf46647a3d4525fc4848.zip
gdb-15bbba8d0de01910ed3ccf46647a3d4525fc4848.tar.gz
gdb-15bbba8d0de01910ed3ccf46647a3d4525fc4848.tar.bz2
2012-01-04 Tristan Gingold <gingold@adacore.com>
* mach-o.c (bfd_mach_o_fat_stat_arch_elt): New function. (bfd_mach_o_generic_stat_arch_elt): Adjust.
Diffstat (limited to 'bfd/mach-o.c')
-rw-r--r--bfd/mach-o.c22
1 files changed, 21 insertions, 1 deletions
diff --git a/bfd/mach-o.c b/bfd/mach-o.c
index 4618fe8..86012d5 100644
--- a/bfd/mach-o.c
+++ b/bfd/mach-o.c
@@ -4203,6 +4203,26 @@ bfd_mach_o_openr_next_archived_file (bfd *archive, bfd *prev)
return nbfd;
}
+/* Analogous to stat call. */
+
+static int
+bfd_mach_o_fat_stat_arch_elt (bfd *abfd, struct stat *buf)
+{
+ if (abfd->arelt_data == NULL)
+ {
+ bfd_set_error (bfd_error_invalid_operation);
+ return -1;
+ }
+
+ buf->st_mtime = 0;
+ buf->st_uid = 0;
+ buf->st_gid = 0;
+ buf->st_mode = 0644;
+ buf->st_size = arelt_size (abfd);
+
+ return 0;
+}
+
/* If ABFD format is FORMAT and architecture is ARCH, return it.
If ABFD is a fat image containing a member that corresponds to FORMAT
and ARCH, returns it.
@@ -4756,7 +4776,7 @@ bfd_boolean bfd_mach_o_free_cached_info (bfd *abfd)
#define bfd_mach_o_truncate_arname _bfd_noarchive_truncate_arname
#define bfd_mach_o_write_armap _bfd_noarchive_write_armap
#define bfd_mach_o_get_elt_at_index _bfd_noarchive_get_elt_at_index
-#define bfd_mach_o_generic_stat_arch_elt _bfd_noarchive_generic_stat_arch_elt
+#define bfd_mach_o_generic_stat_arch_elt bfd_mach_o_fat_stat_arch_elt
#define bfd_mach_o_update_armap_timestamp _bfd_noarchive_update_armap_timestamp
#define TARGET_NAME mach_o_fat_vec