summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin')
-rw-r--r--winsup/cygwin/ChangeLog6
-rw-r--r--winsup/cygwin/cygtls.cc9
-rw-r--r--winsup/cygwin/fhandler_console.cc3
3 files changed, 14 insertions, 4 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 1c2faa025..377747ee5 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,9 @@
+2005-05-10 Christopher Faylor <cgf@timesys.com>
+
+ * cygtls.cc (_cygtls::remove): Clear exitsock after close.
+ * fhandler_console.cc (fhandler_console::write_normal): Store character
+ in a local variable for potential future inspection.
+
2005-05-10 Corinna Vinschen <corinna@vinschen.de>
* Makefile.in (DLL_OFILES): Add fhandler_mailslot.o.
diff --git a/winsup/cygwin/cygtls.cc b/winsup/cygwin/cygtls.cc
index 7b8c560ce..4e09ae923 100644
--- a/winsup/cygwin/cygtls.cc
+++ b/winsup/cygwin/cygtls.cc
@@ -167,10 +167,13 @@ _cygtls::remove (DWORD wait)
return;
if (wait)
{
- // FIXME: Need some sort of atthreadexit function to allow things like
- // select to control this themselves
+ /* FIXME: Need some sort of atthreadexit function to allow things like
+ select to control this themselves. */
if (locals.exitsock != INVALID_SOCKET)
- closesocket (locals.exitsock);
+ {
+ closesocket (locals.exitsock);
+ locals.exitsock = NULL;
+ }
free_local (process_ident);
free_local (ntoa_buf);
free_local (protoent_buf);
diff --git a/winsup/cygwin/fhandler_console.cc b/winsup/cygwin/fhandler_console.cc
index a5fa99ede..a03cca5ec 100644
--- a/winsup/cygwin/fhandler_console.cc
+++ b/winsup/cygwin/fhandler_console.cc
@@ -1430,7 +1430,8 @@ fhandler_console::write_normal (const unsigned char *src,
while (found < end)
{
- if (base_chars[*found] != NOR)
+ char ch = base_chars[*found];
+ if (ch != NOR)
break;
found++;
}