From 4440b020d403deecad8037fdcbac009f40f8296a Mon Sep 17 00:00:00 2001 From: redman Date: Sat, 31 Jul 1999 01:24:22 +0000 Subject: * win/tclWinPipe.c: * win/Makefile.in: Fixing launching of 16-bit apps on Win9x from wish. The command line was primed with tclpip82.dll, but it was ignored. Fixed that, then fixed the gmake makefile to build tclpip82.dll as an executable. * win/tclWinSock.c: Applied small patch to get thread-specific data after initializing the socket driver. --- ChangeLog | 11 +++++++++++ win/Makefile.in | 9 ++++++--- win/tclWinPipe.c | 8 +++++++- win/tclWinSock.c | 7 ++++--- 4 files changed, 28 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3920764..81bf744 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +1999-07-30 + + * win/tclWinPipe.c: + * win/Makefile.in: Fixing launching of 16-bit apps on Win9x from + wish. The command line was primed with tclpip82.dll, but it was + ignored. Fixed that, then fixed the gmake makefile to build + tclpip82.dll as an executable. + + * win/tclWinSock.c: Applied small patch to get thread-specific + data after initializing the socket driver. + 1999-07-29 * win/tclWinChan.c: Allow tcl to open CON and NUL, even for std diff --git a/win/Makefile.in b/win/Makefile.in index f1a18d5..f2d6f29 100644 --- a/win/Makefile.in +++ b/win/Makefile.in @@ -5,7 +5,7 @@ # "autoconf" program (constructs like "@foo@" will get replaced in the # actual Makefile. # -# RCS: @(#) $Id: Makefile.in,v 1.18 1999/07/30 22:26:23 wart Exp $ +# RCS: @(#) $Id: Makefile.in,v 1.19 1999/07/31 01:24:25 redman Exp $ VERSION = @TCL_VERSION@ @@ -113,7 +113,7 @@ TCL_DLL_FILE = @TCL_DLL_FILE@ TCL_LIB_FILE = @TCL_LIB_FILE@ DDE_DLL_FILE = tcldde$(VER)${DLLSUFFIX} REG_DLL_FILE = tclreg$(VER)${DLLSUFFIX} -PIPE_DLL_FILE = tclpip$(VER)${DLLSUFFIX} +PIPE_DLL_FILE = tclpip$(VER).dll SHARED_LIBRARIES = $(TCL_DLL_FILE) $(TCL_STUB_LIB_FILE) \ $(DDE_DLL_FILE) $(REG_DLL_FILE) $(PIPE_DLL_FILE) @@ -315,9 +315,12 @@ ${REG_DLL_FILE}: ${REG_OBJS} ${TCL_STUB_LIB_FILE} @$(RM) ${REG_DLL_FILE} @MAKE_DLL@ ${REG_OBJS} ${TCL_STUB_LIB_FILE} +# PIPE_DLL_FILE is actually an executable, don't build it +# like a DLL. + ${PIPE_DLL_FILE}: ${PIPE_OBJS} @$(RM) ${PIPE_DLL_FILE} - @MAKE_DLL@ ${PIPE_OBJS} + $(CC) $(CFLAGS) ${PIPE_OBJS} $(LIBS) -Fe$(PIPE_DLL_FILE) # Add the object extension to the implicit rules. By default .obj is not # automatically added. diff --git a/win/tclWinPipe.c b/win/tclWinPipe.c index 565445e..9f650ff 100644 --- a/win/tclWinPipe.c +++ b/win/tclWinPipe.c @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclWinPipe.c,v 1.7 1999/07/27 01:42:25 redman Exp $ + * RCS: @(#) $Id: tclWinPipe.c,v 1.8 1999/07/31 01:24:25 redman Exp $ */ #include "tclWinInt.h" @@ -1746,6 +1746,12 @@ BuildCommandLine( Tcl_DStringInit(&ds); + /* + * Prime the path. + */ + + Tcl_DStringAppend(&ds, Tcl_DStringValue(linePtr), -1); + for (i = 0; i < argc; i++) { if (i == 0) { arg = executable; diff --git a/win/tclWinSock.c b/win/tclWinSock.c index 7d6651f..6f53df3 100644 --- a/win/tclWinSock.c +++ b/win/tclWinSock.c @@ -8,7 +8,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclWinSock.c,v 1.15 1999/07/29 22:58:24 redman Exp $ + * RCS: @(#) $Id: tclWinSock.c,v 1.16 1999/07/31 01:24:25 redman Exp $ */ #include "tclWinInt.h" @@ -1435,13 +1435,14 @@ Tcl_MakeTcpClientChannel(sock) { SocketInfo *infoPtr; char channelName[16 + TCL_INTEGER_SPACE]; - ThreadSpecificData *tsdPtr = - (ThreadSpecificData *)TclThreadDataKeyGet(&dataKey); + ThreadSpecificData *tsdPtr; if (TclpHasSockets(NULL) != TCL_OK) { return NULL; } + tsdPtr = (ThreadSpecificData *)TclThreadDataKeyGet(&dataKey); + /* * Set kernel space buffering and non-blocking. */ -- cgit v0.12