+2005-10-26 Alan Modra <amodra@bigpond.net.au>
+
+ * cache.c (bfd_open_file): Set bfd_error_system_call on failure
+ to open file.
+ (bfd_cache_lookup_worker): Remove check that file pos is in
+ unsigned long range. Print system error before aborting.
+
2005-10-25 Arnold Metselaar <arnold.metselaar@planet.nl>
* Makefile.am: Add rules for coff-z80 and cpu-z80.
break;
}
- if (abfd->iostream != NULL)
+ if (abfd->iostream == NULL)
+ bfd_set_error (bfd_error_system_call);
+ else
{
if (! bfd_cache_init (abfd))
return NULL;
snip (abfd);
insert (abfd);
}
+ return (FILE *) abfd->iostream;
}
+
+ if (bfd_open_file (abfd) == NULL)
+ ;
+ else if (real_fseek ((FILE *) abfd->iostream, abfd->where, SEEK_SET) != 0)
+ bfd_set_error (bfd_error_system_call);
else
- {
- if (bfd_open_file (abfd) == NULL
- || abfd->where != (unsigned long) abfd->where
- || real_fseek ((FILE *) abfd->iostream, abfd->where, SEEK_SET) != 0)
- abort ();
- }
+ return (FILE *) abfd->iostream;
- return (FILE *) abfd->iostream;
+ bfd_perror ("Cannot continue");
+ abort ();
+ return NULL;
}