summaryrefslogtreecommitdiffstats
path: root/win/tclWinPort.h
diff options
context:
space:
mode:
authordavygrvy <davygrvy@pobox.com>2002-11-27 00:58:00 (GMT)
committerdavygrvy <davygrvy@pobox.com>2002-11-27 00:58:00 (GMT)
commit32cdcfd0d04a0fd21367cceb1a39d4732bf27837 (patch)
tree159ceb34beedf1700f2cf4b1809fe8878bc8865b /win/tclWinPort.h
parentea08e80325e3379026080b478ed5010a34ae5df1 (diff)
downloadtcl-32cdcfd0d04a0fd21367cceb1a39d4732bf27837.zip
tcl-32cdcfd0d04a0fd21367cceb1a39d4732bf27837.tar.gz
tcl-32cdcfd0d04a0fd21367cceb1a39d4732bf27837.tar.bz2
* win/tclWinPort.h:
* win/tclWinSock.c: This patch does two things: 1) Cleans-up the winsock typedefs by using the typedefs provided by winsock2.h. This has no effect on how winsock is initialized; just makes the source code easier to read. [Patch 561305] 2) Revamps how the socket message handler thread is brough up and down to allows for cleaner exits without the use of TerminateThread(). TerminateThread is evil. No attempt has been made to resolve [Bug 593810] which may need a new channel driver version for adding a registering function whithin the transfered thread to init the handler thread. IOW, initialization of the TSD structure was getting bypassed through the thread extension's [thread::transfer] command.
Diffstat (limited to 'win/tclWinPort.h')
-rw-r--r--win/tclWinPort.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/win/tclWinPort.h b/win/tclWinPort.h
index 011a061..f0ba460 100644
--- a/win/tclWinPort.h
+++ b/win/tclWinPort.h
@@ -10,7 +10,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclWinPort.h,v 1.34 2002/09/27 00:50:10 hobbs Exp $
+ * RCS: @(#) $Id: tclWinPort.h,v 1.35 2002/11/27 00:58:01 davygrvy Exp $
*/
#ifndef _TCLWINPORT
@@ -69,6 +69,14 @@
#include <windows.h>
#undef WIN32_LEAN_AND_MEAN
+/*
+ * Ask for the winsock function typedefs, only. wspiapi.h may be
+ * included, 1) isn't used, and 2) can't cope with typedefs only.
+ * This appears to be a bug in wspiapi.h, so make sure it is excluded.
+ */
+#define _WSPIAPI_H_
+#define INCL_WINSOCK_API_PROTOTYPES 0
+#define INCL_WINSOCK_API_TYPEDEFS 1
#include <winsock2.h>
#ifdef BUILD_tcl