Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Changes In Branch core-8-0-5-branch Excluding Merge-Ins
This is equivalent to a diff from 8b5b3b65b5 to 89afc858bb
1999-04-13
| ||
18:12 | Applied patch to fix sockets when the FD_CONNECT never happens before the FD_WRITE (why, only Micro... Closed-Leaf check-in: 89afc858bb user: redman tags: core-8-0-5-branch | |
1999-03-24
| ||
05:40 | Update to CW Pro 4 and MoreFiles 1.4.9. check-in: 878fc49ec0 user: jingham tags: core-8-0-5-branch | |
1999-02-11
| ||
03:06 | merged auto_mkindex fix into the 8.0.5 release branch check-in: ac72bff2f1 user: stanton tags: core-8-0-5-branch, scriptics-tclpro-1-2-b2 | |
03:04 | * library/init.tcl: Fixed auto_mkindex so it handles .tbc files. Did some general cleanup to handle ... check-in: 9a11b261c6 user: stanton tags: trunk | |
1999-02-09
| ||
03:31 | Created branch core-8-0-5-base-synthetic Closed-Leaf check-in: 813b993971 user: cvs2fossil tags: core-8-0-5-base-synthetic, core-8-0-5-base | |
03:31 | updated readmes for 8.0.5 release check-in: 8b5b3b65b5 user: stanton tags: trunk | |
1999-02-05
| ||
03:12 | updated man page generation for TclPro check-in: 1c005f1d8c user: stanton tags: trunk | |
Changes to doc/open.n.
1 2 3 4 5 6 7 | '\" '\" Copyright (c) 1993 The Regents of the University of California. '\" Copyright (c) 1994-1996 Sun Microsystems, Inc. '\" '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | '\" '\" Copyright (c) 1993 The Regents of the University of California. '\" Copyright (c) 1994-1996 Sun Microsystems, Inc. '\" '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" '\" RCS: @(#) $Id: open.n,v 1.2.2.2 1999/03/24 05:21:07 jingham Exp $ '\" .so man.macros .TH open n 7.6 Tcl "Tcl Built-In Commands" .BS '\" Note: do not modify the .SH NAME line immediately below! .SH NAME open \- Open a file-based or command pipeline channel |
︙ | ︙ | |||
213 214 215 216 217 218 219 | writes to the open pipe will instead be discarded. .sp Since Tcl cannot be run with a real console under Windows 3.X, there are no interactions between command pipelines and the console. .TP \fBMacintosh\fR . | | > > | 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 | writes to the open pipe will instead be discarded. .sp Since Tcl cannot be run with a real console under Windows 3.X, there are no interactions between command pipelines and the console. .TP \fBMacintosh\fR . Access to the serial port is not accomplished through magic cookies passed to the \fIopen\fR command on the Macintosh. Instead, you can use Sean Wood's ([email protected]) \fIDevice\fR extension for the same purpose. .sp Opening a command pipeline is not supported under Macintosh, since applications do not support the concept of standard input or output. .TP \fBUnix\fR\0\0\0\0\0\0\0 . Valid values for \fIfileName\fR to open a serial port are generally of the |
︙ | ︙ |
Changes to library/init.tcl.
1 2 3 4 5 | # init.tcl -- # # Default system startup file for Tcl-based applications. Defines # "unknown" procedure and auto-load facilities. # | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 | # init.tcl -- # # Default system startup file for Tcl-based applications. Defines # "unknown" procedure and auto-load facilities. # # RCS: @(#) $Id: init.tcl,v 1.25.2.1 1999/02/11 03:06:23 stanton Exp $ # # Copyright (c) 1991-1993 The Regents of the University of California. # Copyright (c) 1994-1996 Sun Microsystems, Inc. # Copyright (c) 1998-1999 Scriptics Corporation. # # See the file "license.terms" for information on usage and redistribution # of this file, and for a DISCLAIMER OF ALL WARRANTIES. |
︙ | ︙ | |||
717 718 719 720 721 722 723 724 725 726 727 728 729 730 | append index "# more commands. Typically each line is a command that\n" append index "# sets an element in the auto_index array, where the\n" append index "# element name is the name of a command and the value is\n" append index "# a script that loads the command.\n\n" if {$args == ""} { set args *.tcl } auto_mkindex_parser::init foreach file [eval glob $args] { if {[catch {auto_mkindex_parser::mkindex $file} msg] == 0} { append index $msg } else { set code $errorCode set info $errorInfo | > | 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 | append index "# more commands. Typically each line is a command that\n" append index "# sets an element in the auto_index array, where the\n" append index "# element name is the name of a command and the value is\n" append index "# a script that loads the command.\n\n" if {$args == ""} { set args *.tcl } auto_mkindex_parser::init foreach file [eval glob $args] { if {[catch {auto_mkindex_parser::mkindex $file} msg] == 0} { append index $msg } else { set code $errorCode set info $errorInfo |
︙ | ︙ | |||
803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 | namespace eval auto_mkindex_parser { variable parser "" ;# parser used to build index variable index "" ;# maintains index as it is built variable scriptFile "" ;# name of file being processed variable contextStack "" ;# stack of namespace scopes variable imports "" ;# keeps track of all imported cmds variable initCommands "" ;# list of commands that create aliases proc init {} { variable parser variable initCommands if {![interp issafe]} { set parser [interp create -safe] $parser hide info $parser hide rename $parser hide proc $parser hide namespace $parser hide eval | > > | 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 | namespace eval auto_mkindex_parser { variable parser "" ;# parser used to build index variable index "" ;# maintains index as it is built variable scriptFile "" ;# name of file being processed variable contextStack "" ;# stack of namespace scopes variable imports "" ;# keeps track of all imported cmds variable initCommands "" ;# list of commands that create aliases proc init {} { variable parser variable initCommands if {![interp issafe]} { set parser [interp create -safe] $parser hide info $parser hide rename $parser hide proc $parser hide namespace $parser hide eval |
︙ | ︙ | |||
901 902 903 904 905 906 907 | # Registers a Tcl command to evaluate when initializing the # slave interpreter used by the mkindex parser. # The command is evaluated in the slave interpreter. proc auto_mkindex_parser::slavehook {cmd} { variable initCommands | | | 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 | # Registers a Tcl command to evaluate when initializing the # slave interpreter used by the mkindex parser. # The command is evaluated in the slave interpreter. proc auto_mkindex_parser::slavehook {cmd} { variable initCommands lappend initCommands [list \$parser eval $cmd] } # auto_mkindex_parser::command -- # Registers a new command with the "auto_mkindex_parser" interpreter # that parses Tcl files. These commands are fake versions of things # like the "proc" command. When you execute them, they simply write # out an entry to a "tclIndex" file for auto-loading. |
︙ | ︙ | |||
952 953 954 955 956 957 958 | # we have to build procs with the fully qualified names, and # have the procs point to the aliases. # if {[regexp {::} $name]} { set exportCmd [list _%@namespace export [namespace tail $name]] $parser eval [list _%@namespace eval $ns $exportCmd] set alias [namespace tail $fakeName] | | | 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 | # we have to build procs with the fully qualified names, and # have the procs point to the aliases. # if {[regexp {::} $name]} { set exportCmd [list _%@namespace export [namespace tail $name]] $parser eval [list _%@namespace eval $ns $exportCmd] set alias [namespace tail $fakeName] $parser invokehidden proc $name {args} [list _%@eval $alias \$args] $parser alias $alias $fakeName } else { $parser alias $name $fakeName } return } |
︙ | ︙ | |||
1003 1004 1005 1006 1007 1008 1009 | # AUTO MKINDEX: proc name arglist body # Adds an entry to the auto index list for the given procedure name. auto_mkindex_parser::command proc {name args} { variable index variable scriptFile | | | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 | # AUTO MKINDEX: proc name arglist body # Adds an entry to the auto index list for the given procedure name. auto_mkindex_parser::command proc {name args} { variable index variable scriptFile append index [list set auto_index([fullname $name])] \ " \[list source \[file join \$dir [list $scriptFile]\]\]\n" } # Conditionally add support for Tcl byte code files. There are some # tricky details here. First, we need to get the tbcload library # initialized in the current interpreter. We cannot load tbcload into the # slave until we have done so because it needs access to the tcl_patchLevel # variable. Second, because the package index file may defer loading the # library until we invoke a command, we need to explicitly invoke auto_load # to force it to be loaded. This should be a noop if the package has # already been loaded auto_mkindex_parser::hook { if {![catch {package require tbcload}]} { if {[info commands tbcload::bcproc] == ""} { auto_load tbcload::bcproc } load {} tbcload $auto_mkindex_parser::parser # AUTO MKINDEX: tbcload::bcproc name arglist body # Adds an entry to the auto index list for the given pre-compiled # procedure name. auto_mkindex_parser::commandInit tbcload::bcproc {name args} { variable index variable scriptFile append index [list set auto_index([fullname $name])] \ " \[list source \[file join \$dir [list $scriptFile]\]\]\n" } } } # AUTO MKINDEX: namespace eval name command ?arg arg...? # Adds the namespace name onto the context stack and evaluates the # associated body of commands. # # AUTO MKINDEX: namespace import ?-force? pattern ?pattern...? |
︙ | ︙ | |||
1029 1030 1031 1032 1033 1034 1035 | variable parser variable contextStack set name [lindex $args 0] set args [lrange $args 1 end] set contextStack [linsert $contextStack 0 $name] | < | < < < | | 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 | variable parser variable contextStack set name [lindex $args 0] set args [lrange $args 1 end] set contextStack [linsert $contextStack 0 $name] $parser eval [list _%@namespace eval $name] $args set contextStack [lrange $contextStack 1 end] } import { variable parser variable imports foreach pattern $args { if {$pattern != "-force"} { lappend imports $pattern } } catch {$parser eval [list _%@namespace import] $args} } } } # Close of the if ![interp issafe] block } |
︙ | ︙ |
Changes to mac/MW_TclHeader.pch.
︙ | ︙ | |||
8 9 10 11 12 13 14 | * compiler flags. See MetroWerks documention for more details. * * Copyright (c) 1995-1997 Sun Microsystems, Inc. * * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * | | | 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | * compiler flags. See MetroWerks documention for more details. * * Copyright (c) 1995-1997 Sun Microsystems, Inc. * * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * * RCS: @(#) $Id: MW_TclHeader.pch,v 1.4.2.1 1999/03/24 05:25:29 jingham Exp $ */ /* * To use the compilied header you need to set the "Prefix file" in * the "C/C++ Language" preference panel to point to the created * compilied header. The name of the header depends on the * architecture we are compiling for (see the code below). For |
︙ | ︙ | |||
38 39 40 41 42 43 44 | * to control what functions are exported in the Tcl shared library. */ #pragma export on #include "tcl.h" #include "tclMac.h" #include "tclInt.h" | | > > | 38 39 40 41 42 43 44 45 46 47 48 49 | * to control what functions are exported in the Tcl shared library. */ #pragma export on #include "tcl.h" #include "tclMac.h" #include "tclInt.h" #ifdef TCL_TEST #include "tclMacPort.h" #endif #pragma export reset |
Changes to mac/README.
1 2 3 4 5 6 7 8 9 10 | Tcl 8.0.5 for Macintosh by Ray Johnson Scriptics Corporation [email protected] with major help from Jim Ingham Cygnus Solutions [email protected] | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | Tcl 8.0.5 for Macintosh by Ray Johnson Scriptics Corporation [email protected] with major help from Jim Ingham Cygnus Solutions [email protected] RCS: @(#) $Id: README,v 1.4.2.2 1999/03/24 05:21:07 jingham Exp $ 1. Introduction --------------- This is the README file for the Macintosh version of the Tcl scripting language. The file consists of information specific to the Macintosh version of Tcl. For more general information |
︙ | ︙ | |||
140 141 142 143 144 145 146 | 6. Compiling Tcl ---------------- In order to compile Macintosh Tcl you must have the following items: | | | | 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 | 6. Compiling Tcl ---------------- In order to compile Macintosh Tcl you must have the following items: CodeWarrior Pro 2 through 4 Mac Tcl 8.0 (source) More Files 1.4.3, or 1.4.9 There are two sets of project files included with the package. The ones we use for the release are for CodeWarrior Pro 3, and are not compatible with CodeWarrior Gold release 11 and earlier. We have included the files for earlier versions of CodeWarrior in the folder tcl8.0:mac:CW11 Projects, but they are unsupported, and a little out of date. |
︙ | ︙ | |||
177 178 179 180 181 182 183 | and Power PC builds, for building a CFM 68K build, and for building a shared library Power PC only build. Special notes: * There is a small bug in More Files 1.4.3. Also you should not use MoreFiles 1.4.4 - 1.4.6. Look in the file named morefiles.doc for | | | 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 | and Power PC builds, for building a CFM 68K build, and for building a shared library Power PC only build. Special notes: * There is a small bug in More Files 1.4.3. Also you should not use MoreFiles 1.4.4 - 1.4.6. Look in the file named morefiles.doc for more details. Tcl 8.0.5 is compiled with MoreFiles 1.4.9. * You may not have the libmoto library which will cause a compile error. You don't REALLY need it - it can be removed. Look at the file libmoto.doc for more details. * Check out the file bugs.doc for information about known bugs. If you have comments or Bug reports send them to: Jim Ingham [email protected] |
Changes to mac/tclMacChan.c.
1 2 3 4 5 6 7 8 9 10 11 | /* * tclMacChan.c * * Channel drivers for Macintosh channels for the * console fds. * * Copyright (c) 1996-1997 Sun Microsystems, Inc. * * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | /* * tclMacChan.c * * Channel drivers for Macintosh channels for the * console fds. * * Copyright (c) 1996-1997 Sun Microsystems, Inc. * * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * * RCS: @(#) $Id: tclMacChan.c,v 1.3.2.2 1999/03/24 05:21:16 jingham Exp $ */ #include "tclInt.h" #include "tclPort.h" #include "tclMacInt.h" #include <Aliases.h> #include <Errors.h> |
︙ | ︙ | |||
83 84 85 86 87 88 89 90 91 92 93 94 95 96 | * all events. */ FileState *infoPtr; /* Pointer to file info structure. Note * that we still have to verify that the * file exists before dereferencing this * pointer. */ } FileEvent; /* * Static routines for this file: */ static int CommonGetHandle _ANSI_ARGS_((ClientData instanceData, int direction, ClientData *handlePtr)); | > > > > > > | 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 | * all events. */ FileState *infoPtr; /* Pointer to file info structure. Note * that we still have to verify that the * file exists before dereferencing this * pointer. */ } FileEvent; /* * This is defined in tclMacSerial.c. */ EXTERN Tcl_Channel TclMacOpenSerialChannel _ANSI_ARGS_((Tcl_Interp *interp, char *fileName, int *errorCode)); /* * Static routines for this file: */ static int CommonGetHandle _ANSI_ARGS_((ClientData instanceData, int direction, ClientData *handlePtr)); |
︙ | ︙ | |||
757 758 759 760 761 762 763 | * file, with what modes to create * it? */ { Tcl_Channel chan; int mode; char *nativeName; Tcl_DString buffer; | | > > > > | | 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 | * file, with what modes to create * it? */ { Tcl_Channel chan; int mode; char *nativeName; Tcl_DString buffer; int errorCode, port = 0; mode = GetOpenMode(interp, modeString); if (mode == -1) { return NULL; } /* * Look for the magic cookies that refer to the modem ports. */ nativeName = Tcl_TranslateFileName(interp, fileName, &buffer); if (nativeName == NULL) { return NULL; } chan = OpenFileChannel(nativeName, mode, permissions, &errorCode); Tcl_DStringFree(&buffer); if (chan == NULL) { Tcl_SetErrno(errorCode); if (interp != (Tcl_Interp *) NULL) { Tcl_AppendResult(interp, "couldn't open \"", fileName, "\": ", Tcl_PosixError(interp), (char *) NULL); } return NULL; |
︙ | ︙ |
Changes to mac/tclMacFCmd.c.
1 2 3 4 5 6 7 8 9 10 11 | /* * tclMacFCmd.c -- * * Implements the Macintosh specific portions of the file manipulation * subcommands of the "file" command. * * Copyright (c) 1996-1997 Sun Microsystems, Inc. * * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | /* * tclMacFCmd.c -- * * Implements the Macintosh specific portions of the file manipulation * subcommands of the "file" command. * * Copyright (c) 1996-1997 Sun Microsystems, Inc. * * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * * RCS: @(#) $Id: tclMacFCmd.c,v 1.2.2.1 1999/03/22 05:42:37 jingham Exp $ */ #include "tclInt.h" #include "tclMac.h" #include "tclMacInt.h" #include "tclPort.h" #include <FSpCompat.h> |
︙ | ︙ | |||
68 69 70 71 72 73 74 | /* * Prototypes for procedure only used in this file */ static pascal Boolean CopyErrHandler _ANSI_ARGS_((OSErr error, short failedOperation, short srcVRefNum, long srcDirID, | | | | 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 | /* * Prototypes for procedure only used in this file */ static pascal Boolean CopyErrHandler _ANSI_ARGS_((OSErr error, short failedOperation, short srcVRefNum, long srcDirID, const unsigned char *srcName, short dstVRefNum, long dstDirID, const unsigned char *dstName)); OSErr FSpGetFLockCompat _ANSI_ARGS_((const FSSpec *specPtr, Boolean *lockedPtr)); static OSErr GenerateUniqueName _ANSI_ARGS_((short vRefNum, long dirID1, long dirID2, Str31 uniqueName)); static OSErr GetFileSpecs _ANSI_ARGS_((char *path, FSSpec *pathSpecPtr, FSSpec *dirSpecPtr, Boolean *pathExistsPtr, Boolean *pathIsDirectoryPtr)); |
︙ | ︙ | |||
600 601 602 603 604 605 606 | static pascal Boolean CopyErrHandler( OSErr error, /* Error that occured */ short failedOperation, /* operation that caused the error */ short srcVRefNum, /* volume ref number of source */ long srcDirID, /* directory id of source */ | | | | 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 | static pascal Boolean CopyErrHandler( OSErr error, /* Error that occured */ short failedOperation, /* operation that caused the error */ short srcVRefNum, /* volume ref number of source */ long srcDirID, /* directory id of source */ const unsigned char *srcName, /* name of source */ short dstVRefNum, /* volume ref number of dst */ long dstDirID, /* directory id of dst */ const unsigned char *dstName) /* name of dst directory */ { return true; } /* *--------------------------------------------------------------------------- * |
︙ | ︙ |
Changes to mac/tclMacProjects.sea.hqx.
cannot compute difference between binary files
Changes to mac/tclMacSock.c.
1 2 3 4 5 6 7 8 9 10 | /* * tclMacSock.c * * Channel drivers for Macintosh sockets. * * Copyright (c) 1996-1997 Sun Microsystems, Inc. * * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | /* * tclMacSock.c * * Channel drivers for Macintosh sockets. * * Copyright (c) 1996-1997 Sun Microsystems, Inc. * * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * * RCS: @(#) $Id: tclMacSock.c,v 1.2.2.1 1999/03/22 05:42:54 jingham Exp $ */ #include "tclInt.h" #include "tclPort.h" #include "tclMacInt.h" #include <AddressXlation.h> #include <Aliases.h> |
︙ | ︙ | |||
78 79 80 81 82 83 84 85 86 87 88 89 90 91 | * TCL_WRITABLE as set by Tcl_WatchFile. */ Tcl_TcpAcceptProc *acceptProc; /* Proc to call on accept. */ ClientData acceptProcData; /* The data for the accept proc. */ wdsEntry dataSegment[2]; /* List of buffers to be written async. */ rdsEntry rdsarray[5+1]; /* Array used when cleaning out recieve * buffers on a closing socket. */ Tcl_Channel channel; /* Channel associated with this socket. */ struct TcpState *nextPtr; /* The next socket on the global socket * list. */ } TcpState; /* * This structure is used by domain name resolver callback. */ | > > > | 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 | * TCL_WRITABLE as set by Tcl_WatchFile. */ Tcl_TcpAcceptProc *acceptProc; /* Proc to call on accept. */ ClientData acceptProcData; /* The data for the accept proc. */ wdsEntry dataSegment[2]; /* List of buffers to be written async. */ rdsEntry rdsarray[5+1]; /* Array used when cleaning out recieve * buffers on a closing socket. */ Tcl_Channel channel; /* Channel associated with this socket. */ int writeBufferSize; /* Size of buffer to hold data for * asynchronous writes. */ void *writeBuffer; /* Buffer for async write data. */ struct TcpState *nextPtr; /* The next socket on the global socket * list. */ } TcpState; /* * This structure is used by domain name resolver callback. */ |
︙ | ︙ | |||
1206 1207 1208 1209 1210 1211 1212 | * write isn't in progress and there is room in the output buffers. */ if (!(statePtr->flags & TCP_WRITING) && amount > 0) { if (toWrite < amount) { amount = toWrite; } | > > > > > > > > > > > > > > > > > | > | | 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 | * write isn't in progress and there is room in the output buffers. */ if (!(statePtr->flags & TCP_WRITING) && amount > 0) { if (toWrite < amount) { amount = toWrite; } /* We need to copy the data, otherwise the caller may overwrite * the buffer in the middle of our asynchronous call */ if (amount > statePtr->writeBufferSize) { /* * need to grow write buffer */ if (statePtr->writeBuffer != (void *) NULL) { ckfree(statePtr->writeBuffer); } statePtr->writeBuffer = (void *) ckalloc(amount); statePtr->writeBufferSize = amount; } memcpy(statePtr->writeBuffer, buf, amount); statePtr->dataSegment[0].ptr = statePtr->writeBuffer; statePtr->dataSegment[0].length = amount; statePtr->dataSegment[1].length = 0; InitMacTCPParamBlock(&statePtr->pb, TCPSend); statePtr->pb.ioCompletion = completeUPP; statePtr->pb.tcpStream = tcpStream; statePtr->pb.csParam.send.wdsPtr = (Ptr) statePtr->dataSegment; statePtr->pb.csParam.send.pushFlag = 1; statePtr->pb.csParam.send.userDataPtr = (Ptr) statePtr; |
︙ | ︙ | |||
1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 | statePtr->tcpStream = tcpStream; statePtr->psn = applicationPSN; statePtr->flags = 0; statePtr->checkMask = 0; statePtr->watchMask = 0; statePtr->acceptProc = (Tcl_TcpAcceptProc *) NULL; statePtr->acceptProcData = (ClientData) NULL; statePtr->nextPtr = socketList; socketList = statePtr; return statePtr; } /* *---------------------------------------------------------------------- | > > | 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 | statePtr->tcpStream = tcpStream; statePtr->psn = applicationPSN; statePtr->flags = 0; statePtr->checkMask = 0; statePtr->watchMask = 0; statePtr->acceptProc = (Tcl_TcpAcceptProc *) NULL; statePtr->acceptProcData = (ClientData) NULL; statePtr->writeBuffer = (void *) NULL; statePtr->writeBufferSize = 0; statePtr->nextPtr = socketList; socketList = statePtr; return statePtr; } /* *---------------------------------------------------------------------- |
︙ | ︙ | |||
1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 | for (p = socketList; p != NULL; p = p->nextPtr) { if (p->nextPtr == statePtr) { p->nextPtr = statePtr->nextPtr; break; } } } ckfree((char *) statePtr); } /* *---------------------------------------------------------------------- * * Tcl_MakeTcpClientChannel -- | > > > > > | 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 | for (p = socketList; p != NULL; p = p->nextPtr) { if (p->nextPtr == statePtr) { p->nextPtr = statePtr->nextPtr; break; } } } if (statePtr->writeBuffer != (void *) NULL) { ckfree(statePtr->writeBuffer); } ckfree((char *) statePtr); } /* *---------------------------------------------------------------------- * * Tcl_MakeTcpClientChannel -- |
︙ | ︙ |
Changes to tools/Makefile.in.
1 2 3 4 5 6 7 8 | # This makefile is used to convert Tcl manual pages into various # alternate formats: # # Windows help file: 1. Build the winhelp target on Unix # 2. Build the helpfile target on Windows # # HTML: 1. Build the html target on Unix | | < < > | | | | | | | > | | | | < < < | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | # This makefile is used to convert Tcl manual pages into various # alternate formats: # # Windows help file: 1. Build the winhelp target on Unix # 2. Build the helpfile target on Windows # # HTML: 1. Build the html target on Unix # RCS: @(#) $Id: Makefile.in,v 1.6.2.1 1999/02/19 02:17:04 stanton Exp $ TCL = tcl@TCL_VERSION@ TK = tk@TCL_VERSION@ VER=@TCL_WIN_VERSION@ TCL_BIN_DIR = @TCL_BIN_DIR@ TCL_SOURCE = @TCL_SRC_DIR@ TK_SOURCE = $(TCL_SOURCE)/../$(TK) PRO_SOURCE = $(TCL_SOURCE)/../pro ITCL_SOURCE = $(TCL_SOURCE)/../itcl3.0.1 TCL_DOCS = \ $(TCL_SOURCE)/doc/*.[13n] TK_DOCS = \ $(TK_SOURCE)/doc/*.[13n] PRO_DOCS = \ $(PRO_SOURCE)/doc/man/*.[13n] ITCL_DOCS = \ $(ITCL_SOURCE)/itcl/doc/*.[13n] \ $(ITCL_SOURCE)/itk/doc/*.[13n] # $(ITCL_SOURCE)/iwidgets3.0.0/doc/*.[13n] COREDOCS = $(TCL_DOCS) $(TK_DOCS) PRODOCS = $(COREDOCS) $(PRO_DOCS) $(ITCL_DOCS) TCLSH = $(TCL_BIN_DIR)/tclsh CC=@CC@ all: core pro: $(MAKE) DOCS="$(PRODOCS)" VER="" rtf core: $(MAKE) DOCS="$(COREDOCS)" rtf rtf: $(TCL_SOURCE)/tools/man2help.tcl man2tcl $(DOCS) LD_LIBRARY_PATH=$(TCL_BIN_DIR) \ TCL_LIBRARY=$(TCL_SOURCE)/library \ $(TCLSH) $(TCL_SOURCE)/tools/man2help.tcl tcl "$(VER)" $(DOCS) winhelp: tcl.rtf man2tcl: $(TCL_SOURCE)/tools/man2tcl.c $(CC) $(CFLAGS) -o man2tcl $(TCL_SOURCE)/tools/man2tcl.c clean: -rm -f man2tcl *.o *.cnt *.rtf helpfile: hcw /c /e tcl.hpj |
Changes to tools/configure.in.
1 2 3 4 | dnl This file is an input file used by the GNU "autoconf" program to dnl generate the file "configure", which is run to configure the dnl Makefile in this directory. AC_INIT(man2tcl.c) | | > > > > > > > > > > > > > | > > | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | dnl This file is an input file used by the GNU "autoconf" program to dnl generate the file "configure", which is run to configure the dnl Makefile in this directory. AC_INIT(man2tcl.c) # RCS: @(#) $Id: configure.in,v 1.2.2.2 1999/02/19 03:40:21 stanton Exp $ # Recover information that Tcl computed with its configure script. #-------------------------------------------------------------------- # See if there was a command-line option for where Tcl is; if # not, assume that its top-level directory is a sibling of ours. #-------------------------------------------------------------------- AC_ARG_WITH(tcl, [ --with-tcl=DIR use Tcl 8.0 binaries from DIR], TCL_BIN_DIR=$withval, TCL_BIN_DIR=`cd ../../tcl8.0$TK_PATCH_LEVEL/unix; pwd`) if test ! -d $TCL_BIN_DIR; then AC_MSG_ERROR(Tcl directory $TCL_BIN_DIR doesn't exist) fi if test ! -f $TCL_BIN_DIR/tclConfig.sh; then AC_MSG_ERROR(There's no tclConfig.sh in $TCL_BIN_DIR; perhaps you didn't specify the Tcl *build* directory (not the toplevel Tcl directory) or you forgot to configure Tcl?) fi . $TCL_BIN_DIR/tclConfig.sh TCL_WIN_VERSION=$TCL_MAJOR_VERSION$TCL_MINOR_VERSION AC_SUBST(TCL_WIN_VERSION) CC=$TCL_CC AC_SUBST(CC) AC_SUBST(TCL_VERSION) AC_SUBST(TCL_PATCH_LEVEL) AC_SUBST(TCL_SRC_DIR) AC_SUBST(TCL_BIN_DIR) AC_OUTPUT(tcl.hpj Makefile) |
Changes to tools/man2help.tcl.
1 2 3 4 5 6 7 8 | # man2help.tcl -- # # This file defines procedures that work in conjunction with the # man2tcl program to generate a Windows help file from Tcl manual # entries. # # Copyright (c) 1996 by Sun Microsystems, Inc. # | | > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | # man2help.tcl -- # # This file defines procedures that work in conjunction with the # man2tcl program to generate a Windows help file from Tcl manual # entries. # # Copyright (c) 1996 by Sun Microsystems, Inc. # # RCS: @(#) $Id: man2help.tcl,v 1.3.2.1 1999/02/19 02:17:04 stanton Exp $ # # # PASS 1 # proc generateContents {basename version files} { global curID topics set curID 0 foreach f $files { regsub -all -- {-} [file tail $f] {} curFile puts "Pass 1 -- $f" flush stdout doFile $f } set fd [open "$basename$version.cnt" w] fconfigure $fd -translation crlf puts $fd ":Base $basename$version.hlp" foreach package [getPackages] { foreach section [getSections $package] { puts $fd "1 $section" set lastTopic {} foreach topic [getTopics $package $section] { if {[string compare $lastTopic $topic] != 0} { |
︙ | ︙ | |||
52 53 54 55 56 57 58 59 60 61 62 63 64 65 | foreach key [array names keywords] { foreach id $keywords($key) { lappend id_keywords($id) $key } } set file [open "$basename.rtf" w] puts $file "\{\\rtf1\\ansi \\deff0\\deflang1033\{\\fonttbl\{\\f0\\froman\\fcharset0\\fprq2 Times New Roman\;\}\}" foreach f $files { regsub -all -- {-} [file tail $f] {} curFile puts "Pass 2 -- $f" flush stdout initGlobals doFile $f | > | 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | foreach key [array names keywords] { foreach id $keywords($key) { lappend id_keywords($id) $key } } set file [open "$basename.rtf" w] fconfigure $file -translation crlf puts $file "\{\\rtf1\\ansi \\deff0\\deflang1033\{\\fonttbl\{\\f0\\froman\\fcharset0\\fprq2 Times New Roman\;\}\}" foreach f $files { regsub -all -- {-} [file tail $f] {} curFile puts "Pass 2 -- $f" flush stdout initGlobals doFile $f |
︙ | ︙ |
Deleted tools/tcl.hpj.
|
| < < < < < < < < < < < < < < < < < < < |
Changes to win/tclWinSock.c.
1 2 3 4 5 6 7 8 9 10 | /* * tclWinSock.c -- * * This file contains Windows-specific socket related code. * * Copyright (c) 1995-1997 Sun Microsystems, Inc. * * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | /* * tclWinSock.c -- * * This file contains Windows-specific socket related code. * * Copyright (c) 1995-1997 Sun Microsystems, Inc. * * 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.5.2.1 1999/04/13 18:12:43 redman Exp $ */ #include "tclInt.h" #include "tclPort.h" /* * The following variable is used to tell whether this module has been |
︙ | ︙ | |||
1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 | if (error != ERROR_SUCCESS) { TclWinConvertWSAError(error); infoPtr->lastError = Tcl_GetErrno(); } } infoPtr->readyEvents |= event; break; } } /* * Flush the Tcl event queue before returning to the event loop. | > > > > > > > > | 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 | if (error != ERROR_SUCCESS) { TclWinConvertWSAError(error); infoPtr->lastError = Tcl_GetErrno(); } } if(infoPtr->flags & SOCKET_ASYNC_CONNECT) { infoPtr->flags &= ~(SOCKET_ASYNC_CONNECT); if (error != ERROR_SUCCESS) { TclWinConvertWSAError(error); infoPtr->lastError = Tcl_GetErrno(); } infoPtr->readyEvents |= FD_WRITE; } infoPtr->readyEvents |= event; break; } } /* * Flush the Tcl event queue before returning to the event loop. |
︙ | ︙ |