aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog1
-rw-r--r--bfd/opncls.c6
2 files changed, 5 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 6b8388f..58f3b91 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,6 +1,7 @@
2005-06-08 Alan Modra <amodra@bigpond.net.au>
* opncls.c (bfd_fopen): Don't set bfd_error unconditionally.
+ (bfd_fdopenr): Same.
2005-06-07 Mark Mitchell <mark@codesourcery.com>
diff --git a/bfd/opncls.c b/bfd/opncls.c
index 112401a..df2cf6d 100644
--- a/bfd/opncls.c
+++ b/bfd/opncls.c
@@ -268,13 +268,15 @@ bfd_fdopenr (const char *filename, const char *target, int fd)
int fdflags;
#endif
- bfd_set_error (bfd_error_system_call);
#if ! defined(HAVE_FCNTL) || ! defined(F_GETFL)
mode = FOPEN_RUB; /* Assume full access. */
#else
fdflags = fcntl (fd, F_GETFL, NULL);
if (fdflags == -1)
- return NULL;
+ {
+ bfd_set_error (bfd_error_system_call);
+ return NULL;
+ }
/* (O_ACCMODE) parens are to avoid Ultrix header file bug. */
switch (fdflags & (O_ACCMODE))