summaryrefslogtreecommitdiffstats
path: root/winsup
diff options
context:
space:
mode:
Diffstat (limited to 'winsup')
-rw-r--r--winsup/cygwin/ChangeLog4
-rw-r--r--winsup/cygwin/dlfcn.cc13
2 files changed, 13 insertions, 4 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 9f1527aee..80e8c9f44 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,5 +1,9 @@
2003-01-31 Christopher Faylor <cgf@redhat.com>
+ * dlfcn.cc (dlerror): Only report load errors once per error.
+
+2003-01-31 Christopher Faylor <cgf@redhat.com>
+
* fhandler_serial.cc (fhandler_serial::open): Avoid extraneous setting
of res.
diff --git a/winsup/cygwin/dlfcn.cc b/winsup/cygwin/dlfcn.cc
index b6babe66b..b03f685fc 100644
--- a/winsup/cygwin/dlfcn.cc
+++ b/winsup/cygwin/dlfcn.cc
@@ -144,8 +144,13 @@ dlclose (void *handle)
char *
dlerror ()
{
- char *ret = 0;
- if (_dl_error)
- ret = _dl_buffer;
- return ret;
+ char *res;
+ if (!_dl_error)
+ res = NULL;
+ else
+ {
+ _dl_error = 0;
+ res = _dl_buffer;
+ }
+ return res;
}