diff options
| author | das <das> | 2002-10-09 11:54:02 (GMT) |
|---|---|---|
| committer | das <das> | 2002-10-09 11:54:02 (GMT) |
| commit | 5451c5041622ded8cdbc5b63e4b5a1ed14a31de6 (patch) | |
| tree | fcd14750217863bb89fa52d2ccf756a933b9a514 | |
| parent | 22cf6ccfd778871f2ac0415b10e303a0af281e06 (diff) | |
| download | tcl-5451c5041622ded8cdbc5b63e4b5a1ed14a31de6.zip tcl-5451c5041622ded8cdbc5b63e4b5a1ed14a31de6.tar.gz tcl-5451c5041622ded8cdbc5b63e4b5a1ed14a31de6.tar.bz2 | |
* generic/tclInt.decls: made TclSetPreInitScript() declaration
generic as it is used on mac & aqua as well.
* generic/tclIntDecls.h:
* generic/tclStubInit.c: regen.
* generic/tclCompile.h: added prototype for TclCompileVariableCmd.
* mac/tclMacPort.h: removed incorrect <fcntl.h> definitions
and obsolete <stat.h> definitions.
* mac/tclMacChan.c: removed obsolete GetOpenMode() and replaced
associated constants with the <fcntl.h> analogues (they existing
defs were inconsistent with <fcntl.h> which was causing havoc when
Tcl_GetOpenMode was used instead of private GetOpenMode).
* mac/tclMacFCmd.c: removed GenerateUniqueName(), use equivalent
(and identiaclly named) routine from MoreFiles instead.
* mac/tclMacLoad.c: CONSTification, fixes to Vince's last changes.
* mac/tclMacFile.c:
* mac/tclMacTest.c:
* mac/tclMacUnix.c: CONSTification.
* mac/tclMacOSA.c: CONSTificcation, sprintf fixes, UH 3.4.x changes;
fix for missing autoname token from TclOSACompileCmd. (bdesgraupes)
* mac/AppleScript.html(AppleScript delete): doc fix. (bdesgraupes)
* mac/tcltkMacBuildSupport.sea.hqx: updated MoreFiles to 1.5.3,
updated build instructions for 8.4.
* mac/tclMacProjects.sea.hqx: rebuilt archive.
| -rw-r--r-- | ChangeLog | 32 | ||||
| -rw-r--r-- | generic/tclCompile.h | 4 | ||||
| -rw-r--r-- | generic/tclInt.decls | 4 | ||||
| -rw-r--r-- | generic/tclIntDecls.h | 16 | ||||
| -rw-r--r-- | generic/tclStubInit.c | 10 | ||||
| -rw-r--r-- | mac/AppleScript.html | 22 | ||||
| -rw-r--r-- | mac/tclMacChan.c | 182 | ||||
| -rw-r--r-- | mac/tclMacFCmd.c | 80 | ||||
| -rw-r--r-- | mac/tclMacFile.c | 4 | ||||
| -rw-r--r-- | mac/tclMacLoad.c | 30 | ||||
| -rw-r--r-- | mac/tclMacOSA.c | 127 | ||||
| -rw-r--r-- | mac/tclMacPort.h | 50 | ||||
| -rw-r--r-- | mac/tclMacProjects.sea.hqx | 7605 | ||||
| -rw-r--r-- | mac/tclMacTest.c | 14 | ||||
| -rw-r--r-- | mac/tclMacUnix.c | 4 | ||||
| -rw-r--r-- | mac/tcltkMacBuildSupport.sea.hqx | 7891 |
16 files changed, 7887 insertions, 8188 deletions
@@ -1,3 +1,35 @@ +2002-10-09 Daniel Steffen <das@users.sourceforge.net> + + * generic/tclInt.decls: made TclSetPreInitScript() declaration + generic as it is used on mac & aqua as well. + * generic/tclIntDecls.h: + * generic/tclStubInit.c: regen. + * generic/tclCompile.h: added prototype for TclCompileVariableCmd. + + * mac/tclMacPort.h: removed incorrect <fcntl.h> definitions + and obsolete <stat.h> definitions. + * mac/tclMacChan.c: removed obsolete GetOpenMode() and replaced + associated constants with the <fcntl.h> analogues (they existing + defs were inconsistent with <fcntl.h> which was causing havoc when + Tcl_GetOpenMode was used instead of private GetOpenMode). + + * mac/tclMacFCmd.c: removed GenerateUniqueName(), use equivalent + (and identiaclly named) routine from MoreFiles instead. + + * mac/tclMacLoad.c: CONSTification, fixes to Vince's last changes. + + * mac/tclMacFile.c: + * mac/tclMacTest.c: + * mac/tclMacUnix.c: CONSTification. + + * mac/tclMacOSA.c: CONSTificcation, sprintf fixes, UH 3.4.x changes; + fix for missing autoname token from TclOSACompileCmd. (bdesgraupes) + * mac/AppleScript.html(AppleScript delete): doc fix. (bdesgraupes) + + * mac/tcltkMacBuildSupport.sea.hqx: updated MoreFiles to 1.5.3, + updated build instructions for 8.4. + * mac/tclMacProjects.sea.hqx: rebuilt archive. + 2002-10-09 Donal K. Fellows <fellowsd@cs.man.ac.uk> * doc/Alloc.3: Added a note to mention that attempting to allocate diff --git a/generic/tclCompile.h b/generic/tclCompile.h index 0d2d781..de6bf24 100644 --- a/generic/tclCompile.h +++ b/generic/tclCompile.h @@ -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: tclCompile.h,v 1.32 2002/09/24 12:53:33 dkf Exp $ + * RCS: @(#) $Id: tclCompile.h,v 1.33 2002/10/09 11:54:05 das Exp $ */ #ifndef _TCLCOMPILATION @@ -819,6 +819,8 @@ EXTERN void TclVerifyGlobalLiteralTable _ANSI_ARGS_(( EXTERN void TclVerifyLocalLiteralTable _ANSI_ARGS_(( CompileEnv *envPtr)); #endif +EXTERN int TclCompileVariableCmd _ANSI_ARGS_(( + Tcl_Interp *interp, Tcl_Parse *parsePtr, CompileEnv *envPtr)); /* *---------------------------------------------------------------- diff --git a/generic/tclInt.decls b/generic/tclInt.decls index 8c1e733..b63ee4b 100644 --- a/generic/tclInt.decls +++ b/generic/tclInt.decls @@ -12,7 +12,7 @@ # See the file "license.terms" for information on usage and redistribution # of this file, and for a DISCLAIMER OF ALL WARRANTIES. # -# RCS: @(#) $Id: tclInt.decls,v 1.55 2002/08/06 01:49:27 das Exp $ +# RCS: @(#) $Id: tclInt.decls,v 1.56 2002/10/09 11:54:09 das Exp $ library tcl @@ -399,7 +399,7 @@ declare 98 generic { # Tcl_Obj * TclSetIndexedScalar(Tcl_Interp *interp, int localIndex, # Tcl_Obj *objPtr, int flags) #} -declare 101 {unix win} { +declare 101 generic { char * TclSetPreInitScript(char *string) } declare 102 generic { diff --git a/generic/tclIntDecls.h b/generic/tclIntDecls.h index 4309c93..8a277ba 100644 --- a/generic/tclIntDecls.h +++ b/generic/tclIntDecls.h @@ -11,7 +11,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclIntDecls.h,v 1.45 2002/08/05 03:24:41 dgp Exp $ + * RCS: @(#) $Id: tclIntDecls.h,v 1.46 2002/10/09 11:54:13 das Exp $ */ #ifndef _TCLINTDECLS @@ -285,14 +285,8 @@ EXTERN void TclResetShadowedCmdRefs _ANSI_ARGS_(( EXTERN int TclServiceIdle _ANSI_ARGS_((void)); /* Slot 99 is reserved */ /* Slot 100 is reserved */ -#if !defined(__WIN32__) && !defined(MAC_TCL) /* UNIX */ /* 101 */ EXTERN char * TclSetPreInitScript _ANSI_ARGS_((char * string)); -#endif /* UNIX */ -#ifdef __WIN32__ -/* 101 */ -EXTERN char * TclSetPreInitScript _ANSI_ARGS_((char * string)); -#endif /* __WIN32__ */ /* 102 */ EXTERN void TclSetupEnv _ANSI_ARGS_((Tcl_Interp * interp)); /* 103 */ @@ -1045,18 +1039,10 @@ extern TclIntStubs *tclIntStubsPtr; #endif /* Slot 99 is reserved */ /* Slot 100 is reserved */ -#if !defined(__WIN32__) && !defined(MAC_TCL) /* UNIX */ #ifndef TclSetPreInitScript #define TclSetPreInitScript \ (tclIntStubsPtr->tclSetPreInitScript) /* 101 */ #endif -#endif /* UNIX */ -#ifdef __WIN32__ -#ifndef TclSetPreInitScript -#define TclSetPreInitScript \ - (tclIntStubsPtr->tclSetPreInitScript) /* 101 */ -#endif -#endif /* __WIN32__ */ #ifndef TclSetupEnv #define TclSetupEnv \ (tclIntStubsPtr->tclSetupEnv) /* 102 */ diff --git a/generic/tclStubInit.c b/generic/tclStubInit.c index 49f581c..e39a6d4 100644 --- a/generic/tclStubInit.c +++ b/generic/tclStubInit.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: tclStubInit.c,v 1.75 2002/08/31 06:09:45 das Exp $ + * RCS: @(#) $Id: tclStubInit.c,v 1.76 2002/10/09 11:54:48 das Exp $ */ #include "tclInt.h" @@ -164,15 +164,7 @@ TclIntStubs tclIntStubs = { TclServiceIdle, /* 98 */ NULL, /* 99 */ NULL, /* 100 */ -#if !defined(__WIN32__) && !defined(MAC_TCL) /* UNIX */ - TclSetPreInitScript, /* 101 */ -#endif /* UNIX */ -#ifdef __WIN32__ TclSetPreInitScript, /* 101 */ -#endif /* __WIN32__ */ -#ifdef MAC_TCL - NULL, /* 101 */ -#endif /* MAC_TCL */ TclSetupEnv, /* 102 */ TclSockGetPort, /* 103 */ #if !defined(__WIN32__) && !defined(MAC_TCL) /* UNIX */ diff --git a/mac/AppleScript.html b/mac/AppleScript.html index 4a73fbb..32b2e9f 100644 --- a/mac/AppleScript.html +++ b/mac/AppleScript.html @@ -23,7 +23,7 @@ AppleScript - Communicate with the AppleScript OSA component to run <BR> <B>AppleScript <A NAME="decompile">decompile</A></B> <I>scriptName</I> <BR> -<B>AppleScript delete </B><I>scriptName</I> +<B>AppleScript <A NAME="delete">delete</A> </B><I>what scriptName</I> <BR> <B>AppleScript <A NAME="execute">execute</A> </B><I>?flags value?</I> <I>scriptData1 ?scriptData2 ...?</I> @@ -153,11 +153,25 @@ The possible sub-commands are: and returns the source code. <P> <DT> - <I>AppleScript</I> <B>delete </B><I>scriptName</I> + <I>AppleScript</I> <B><A NAME="delete">delete</A> </B><I>what scriptName</I> <BR> <DD> - This deletes the script data compiled into the script scriptName, - and frees up all the resources associated with it. + This deletes contexts or script data. The allowed values for "what" are: + <P> + <DL> + <DT> + <P> + <B>context</B> + <DD> + This deletes the context scriptName, + and frees up all the resources associated with it. + <DT> + <P> + <B>script</B> + <DD> + This deletes the script data compiled into the script scriptName, + and frees up all the resources associated with it. + </DL> <P> <DT> <I>AppleScript</I> <B><A NAME="execute">execute</A> </B><I>?flags value?</I> <I>scriptData1 diff --git a/mac/tclMacChan.c b/mac/tclMacChan.c index 6c34e96..b31d30a 100644 --- a/mac/tclMacChan.c +++ b/mac/tclMacChan.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: tclMacChan.c,v 1.17 2002/07/08 10:08:58 vincentdarley Exp $ + * RCS: @(#) $Id: tclMacChan.c,v 1.18 2002/10/09 11:54:16 das Exp $ */ #include "tclInt.h" @@ -33,24 +33,6 @@ #endif /* - * The following are flags returned by GetOpenMode. They - * are or'd together to determine how opening and handling - * a file should occur. - */ - -#define TCL_RDONLY (1<<0) -#define TCL_WRONLY (1<<1) -#define TCL_RDWR (1<<2) -#define TCL_CREAT (1<<3) -#define TCL_TRUNC (1<<4) -#define TCL_APPEND (1<<5) -#define TCL_ALWAYS_APPEND (1<<6) -#define TCL_EXCL (1<<7) -#define TCL_NOCTTY (1<<8) -#define TCL_NONBLOCK (1<<9) -#define TCL_RW_MODES (TCL_RDONLY|TCL_WRONLY|TCL_RDWR) - -/* * This structure describes per-instance state of a * macintosh file based channel. */ @@ -119,8 +101,6 @@ static int FileSeek _ANSI_ARGS_((ClientData instanceData, long offset, int mode, int *errorCode)); static void FileSetupProc _ANSI_ARGS_((ClientData clientData, int flags)); -static int GetOpenMode _ANSI_ARGS_((Tcl_Interp *interp, - CONST char *string)); static Tcl_Channel OpenFileChannel _ANSI_ARGS_((CONST char *fileName, int mode, int permissions, int *errorCodePtr)); static int StdIOBlockMode _ANSI_ARGS_((ClientData instanceData, @@ -827,12 +807,12 @@ OpenFileChannel( * Windows and UNIX and the feature is used by Tcl. */ - switch (mode & (TCL_RDONLY | TCL_WRONLY | TCL_RDWR)) { - case TCL_RDWR: + switch (mode & (O_RDONLY | O_WRONLY | O_RDWR)) { + case O_RDWR: channelPermissions = (TCL_READABLE | TCL_WRITABLE); macPermision = fsRdWrShPerm; break; - case TCL_WRONLY: + case O_WRONLY: /* * Mac's fsRdPerm permission actually defaults to fsRdWrPerm because * the Mac OS doesn't realy support write only access. We explicitly @@ -842,7 +822,7 @@ OpenFileChannel( channelPermissions = TCL_WRITABLE; macPermision = fsRdWrShPerm; break; - case TCL_RDONLY: + case O_RDONLY: default: channelPermissions = TCL_READABLE; macPermision = fsRdPerm; @@ -856,14 +836,14 @@ OpenFileChannel( return NULL; } - if ((err == fnfErr) && (mode & TCL_CREAT)) { + if ((err == fnfErr) && (mode & O_CREAT)) { err = HCreate(fileSpec.vRefNum, fileSpec.parID, fileSpec.name, TCL_FILE_CREATOR, 'TEXT'); if (err != noErr) { *errorCodePtr = errno = TclMacOSErrorToPosixError(err); Tcl_SetErrno(errno); return NULL; } - } else if ((mode & TCL_CREAT) && (mode & TCL_EXCL)) { + } else if ((mode & O_CREAT) && (mode & O_EXCL)) { *errorCodePtr = errno = EEXIST; Tcl_SetErrno(errno); return NULL; @@ -876,7 +856,7 @@ OpenFileChannel( return NULL; } - if (mode & TCL_TRUNC) { + if (mode & O_TRUNC) { SetEOF(fileRef, 0); } @@ -897,13 +877,13 @@ OpenFileChannel( fileState->fileRef = fileRef; fileState->pending = 0; fileState->watchMask = 0; - if (mode & TCL_ALWAYS_APPEND) { + if (mode & O_APPEND) { fileState->appendMode = true; } else { fileState->appendMode = false; } - if ((mode & TCL_ALWAYS_APPEND) || (mode & TCL_APPEND)) { + if ((mode & O_APPEND) || (mode & O_APPEND)) { if (Tcl_Seek(chan, 0, SEEK_END) < 0) { *errorCodePtr = errno = EFAULT; Tcl_SetErrno(errno); @@ -1244,145 +1224,3 @@ CommonWatch( } } } - -/* - *---------------------------------------------------------------------- - * - * GetOpenMode -- - * - * Description: - * Computes a POSIX mode mask from a given string and also sets - * a flag to indicate whether the caller should seek to EOF during - * opening of the file. - * - * Results: - * On success, returns mode to pass to "open". If an error occurs, the - * returns -1 and if interp is not NULL, sets the interp's result to an - * error message. - * - * Side effects: - * Sets the integer referenced by seekFlagPtr to 1 if the caller - * should seek to EOF during opening the file. - * - * Special note: - * This code is based on a prototype implementation contributed - * by Mark Diekhans. - * - *---------------------------------------------------------------------- - */ - -static int -GetOpenMode( - Tcl_Interp *interp, /* Interpreter to use for error - * reporting - may be NULL. */ - CONST char *string) /* Mode string, e.g. "r+" or - * "RDONLY CREAT". */ -{ - int mode, modeArgc, c, i, gotRW; - CONST char **modeArgv, *flag; - - /* - * Check for the simpler fopen-like access modes (e.g. "r"). They - * are distinguished from the POSIX access modes by the presence - * of a lower-case first letter. - */ - - mode = 0; - /* - * Guard against international characters before using byte oriented - * routines. - */ - - if (!(string[0] & 0x80) - && islower(UCHAR(string[0]))) { /* INTL: ISO only. */ - switch (string[0]) { - case 'r': - mode = TCL_RDONLY; - break; - case 'w': - mode = TCL_WRONLY|TCL_CREAT|TCL_TRUNC; - break; - case 'a': - mode = TCL_WRONLY|TCL_CREAT|TCL_APPEND; - break; - default: - error: - if (interp != (Tcl_Interp *) NULL) { - Tcl_AppendResult(interp, - "illegal access mode \"", string, "\"", - (char *) NULL); - } - return -1; - } - if (string[1] == '+') { - mode &= ~(TCL_RDONLY|TCL_WRONLY); - mode |= TCL_RDWR; - if (string[2] != 0) { - goto error; - } - } else if (string[1] != 0) { - goto error; - } - return mode; - } - - /* - * The access modes are specified using a list of POSIX modes - * such as TCL_CREAT. - */ - - if (Tcl_SplitList(interp, string, &modeArgc, &modeArgv) != TCL_OK) { - if (interp != (Tcl_Interp *) NULL) { - Tcl_AddErrorInfo(interp, - "\n while processing open access modes \""); - Tcl_AddErrorInfo(interp, string); - Tcl_AddErrorInfo(interp, "\""); - } - return -1; - } - - gotRW = 0; - for (i = 0; i < modeArgc; i++) { - flag = modeArgv[i]; - c = flag[0]; - if ((c == 'R') && (strcmp(flag, "RDONLY") == 0)) { - mode = (mode & ~TCL_RW_MODES) | TCL_RDONLY; - gotRW = 1; - } else if ((c == 'W') && (strcmp(flag, "WRONLY") == 0)) { - mode = (mode & ~TCL_RW_MODES) | TCL_WRONLY; - gotRW = 1; - } else if ((c == 'R') && (strcmp(flag, "RDWR") == 0)) { - mode = (mode & ~TCL_RW_MODES) | TCL_RDWR; - gotRW = 1; - } else if ((c == 'A') && (strcmp(flag, "APPEND") == 0)) { - mode |= TCL_ALWAYS_APPEND; - } else if ((c == 'C') && (strcmp(flag, "CREAT") == 0)) { - mode |= TCL_CREAT; - } else if ((c == 'E') && (strcmp(flag, "EXCL") == 0)) { - mode |= TCL_EXCL; - } else if ((c == 'N') && (strcmp(flag, "NOCTTY") == 0)) { - mode |= TCL_NOCTTY; - } else if ((c == 'N') && (strcmp(flag, "NONBLOCK") == 0)) { - mode |= TCL_NONBLOCK; - } else if ((c == 'T') && (strcmp(flag, "TRUNC") == 0)) { - mode |= TCL_TRUNC; - } else { - if (interp != (Tcl_Interp *) NULL) { - Tcl_AppendResult(interp, "invalid access mode \"", flag, - "\": must be RDONLY, WRONLY, RDWR, APPEND, CREAT", - " EXCL, NOCTTY, NONBLOCK, or TRUNC", (char *) NULL); - } - ckfree((char *) modeArgv); - return -1; - } - } - ckfree((char *) modeArgv); - if (!gotRW) { - if (interp != (Tcl_Interp *) NULL) { - Tcl_AppendResult(interp, "access mode must include either", - " RDONLY, WRONLY, or RDWR", (char *) NULL); - } - return -1; - } - return mode; -} diff --git a/mac/tclMacFCmd.c b/mac/tclMacFCmd.c index e22b365..f1a39b2 100644 --- a/mac/tclMacFCmd.c +++ b/mac/tclMacFCmd.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: tclMacFCmd.c,v 1.17 2002/04/19 14:18:45 das Exp $ + * RCS: @(#) $Id: tclMacFCmd.c,v 1.18 2002/10/09 11:54:20 das Exp $ */ #include "tclInt.h" @@ -65,6 +65,11 @@ CONST TclFileAttrProcs tclpFileAttrProcs[] = { {GetFileReadOnly, SetFileReadOnly}, {GetFileFinderAttributes, SetFileFinderAttributes}}; +/* + * File specific static data + */ + +static long startSeed = 248923489; /* * Prototypes for procedure only used in this file @@ -87,8 +92,6 @@ static int DoRenameFile _ANSI_ARGS_((CONST char *src, CONST char *dst)); 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_((CONST char *path, FSSpec *pathSpecPtr, FSSpec *dirSpecPtr, Boolean *pathExistsPtr, @@ -218,7 +221,7 @@ DoRenameFile( Str31 tmpName; FSSpec tmpFileSpec; - err = GenerateUniqueName(dstFileSpec.vRefNum, + err = GenerateUniqueName(dstFileSpec.vRefNum, &startSeed, dstFileSpec.parID, dstFileSpec.parID, tmpName); if (err == noErr) { err = FSpRenameCompat(&dstFileSpec, tmpName); @@ -334,7 +337,7 @@ MoveRename( * dest directory, and rename temp to target. */ - err = GenerateUniqueName(srcFileSpecPtr->vRefNum, + err = GenerateUniqueName(srcFileSpecPtr->vRefNum, &startSeed, srcFileSpecPtr->parID, dstID, tmpName); FSMakeFSSpecCompat(srcFileSpecPtr->vRefNum, srcFileSpecPtr->parID, tmpName, &tmpSrcFileSpec); @@ -436,7 +439,7 @@ DoCopyFile( * Backup dest file. */ - dstErr = GenerateUniqueName(dstFileSpec.vRefNum, dstFileSpec.parID, + dstErr = GenerateUniqueName(dstFileSpec.vRefNum, &startSeed, dstFileSpec.parID, dstFileSpec.parID, tmpName); if (dstErr == noErr) { dstErr = FSpRenameCompat(&dstFileSpec, tmpName); @@ -707,7 +710,7 @@ DoCopyDirectory( FSpRstFLockCompat(&srcFileSpec); } if (err == noErr) { - err = GenerateUniqueName(dstFileSpec.vRefNum, dstFileSpec.parID, + err = GenerateUniqueName(dstFileSpec.vRefNum, &startSeed, dstFileSpec.parID, dstFileSpec.parID, tmpName); } if (err == noErr) { @@ -934,69 +937,6 @@ DoRemoveDirectory( /* *--------------------------------------------------------------------------- * - * GenerateUniqueName -- - * - * Generate a filename that is not in either of the two specified - * directories (on the same volume). - * - * Results: - * Standard macintosh error. On success, uniqueName is filled with - * the name of the temporary file. - * - * Side effects: - * None. - * - *--------------------------------------------------------------------------- - */ - -static OSErr -GenerateUniqueName( - short vRefNum, /* Volume on which the following directories - * are located. */ - long dirID1, /* ID of first directory. */ - long dirID2, /* ID of second directory. May be the same - * as the first. */ - Str31 uniqueName) /* Filled with filename for a file that is - * not located in either of the above two - * directories. */ -{ - OSErr err; - long i; - CInfoPBRec pb; - static unsigned char hexStr[16] = "0123456789ABCDEF"; - static long startSeed = 248923489; - - pb.hFileInfo.ioVRefNum = vRefNum; - pb.hFileInfo.ioFDirIndex = 0; - pb.hFileInfo.ioNamePtr = uniqueName; - - while (1) { - startSeed++; - pb.hFileInfo.ioNamePtr[0] = 8; - for (i = 1; i <= 8; i++) { - pb.hFileInfo.ioNamePtr[i] = hexStr[((startSeed >> ((8-i)*4)) & 0xf)]; - } - pb.hFileInfo.ioDirID = dirID1; - err = PBGetCatInfoSync(&pb); - if (err == fnfErr) { - if (dirID1 != dirID2) { - pb.hFileInfo.ioDirID = dirID2; - err = PBGetCatInfoSync(&pb); - } - if (err == fnfErr) { - return noErr; - } - } - if (err == noErr) { - continue; - } - return err; - } -} - -/* - *--------------------------------------------------------------------------- - * * GetFileSpecs -- * * Gets FSSpecs for the specified path and its parent directory. diff --git a/mac/tclMacFile.c b/mac/tclMacFile.c index 248dc94..5e4d363 100644 --- a/mac/tclMacFile.c +++ b/mac/tclMacFile.c @@ -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: tclMacFile.c,v 1.24 2002/07/15 10:28:18 vincentdarley Exp $ + * RCS: @(#) $Id: tclMacFile.c,v 1.25 2002/10/09 11:54:24 das Exp $ */ /* @@ -1172,7 +1172,7 @@ TclpObjLink(pathPtr, toPtr, linkAction) FSSpec spec; FSSpec linkSpec; OSErr err; - char *path; + CONST char *path; AliasHandle alias; err = FspLocationFromFsPath(toPtr, &spec); diff --git a/mac/tclMacLoad.c b/mac/tclMacLoad.c index 3c2ec37..379b450 100644 --- a/mac/tclMacLoad.c +++ b/mac/tclMacLoad.c @@ -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: tclMacLoad.c,v 1.15 2002/07/18 16:26:04 vincentdarley Exp $ + * RCS: @(#) $Id: tclMacLoad.c,v 1.16 2002/10/09 11:54:26 das Exp $ */ #include <CodeFragments.h> @@ -92,8 +92,8 @@ typedef struct TclMacLoadInfo { FSSpec fileSpec; } TclMacLoadInfo; -static int TryToLoad(Tcl_Interp *interp, TclMacLoadInfo *loadInfo, - CONST char *sym /* native */) +static int TryToLoad(Tcl_Interp *interp, TclMacLoadInfo *loadInfo, Tcl_Obj *pathPtr, + CONST char *sym /* native */); /* @@ -123,14 +123,13 @@ TclpDlopen(interp, pathPtr, loadHandle, unloadProcPtr) Tcl_LoadHandle *loadHandle; /* Filled with token for dynamically loaded * file which will be passed back to * (*unloadProcPtr)() to unload the file. */ - Tcl_FSUnloadFileProc **unloadProcPtr) + Tcl_FSUnloadFileProc **unloadProcPtr; /* Filled with address of Tcl_FSUnloadFileProc * function which should be used for * this file. */ { OSErr err; FSSpec fileSpec; - Tcl_DString ds; CONST char *native; TclMacLoadInfo *loadInfo; @@ -147,8 +146,8 @@ TclpDlopen(interp, pathPtr, loadHandle, unloadProcPtr) loadInfo->fileSpec = fileSpec; loadInfo->connID = NULL; - if (TryToLoad(interp, loadInfo, NULL) != TCL_OK) { - ckfree(loadInfo); + if (TryToLoad(interp, loadInfo, pathPtr, NULL) != TCL_OK) { + ckfree((char*) loadInfo); return TCL_ERROR; } @@ -163,9 +162,10 @@ TclpDlopen(interp, pathPtr, loadHandle, unloadProcPtr) * loaded. */ static int -TryToLoad(Tcl_Interp *interp, TclMacLoadInfo *loadInfo, +TryToLoad(Tcl_Interp *interp, TclMacLoadInfo *loadInfo, Tcl_Obj *pathPtr, CONST char *sym /* native */) { + OSErr err; CFragConnectionID connID; Ptr dummy; short fragFileRef, saveFileRef; @@ -189,7 +189,7 @@ TryToLoad(Tcl_Interp *interp, TclMacLoadInfo *loadInfo, saveFileRef = CurResFile(); SetResLoad(false); - fragFileRef = FSpOpenResFile(&fileSpec, fsRdPerm); + fragFileRef = FSpOpenResFile(&loadInfo->fileSpec, fsRdPerm); SetResLoad(true); if (fragFileRef != -1) { if (sym != NULL) { @@ -237,14 +237,20 @@ TryToLoad(Tcl_Interp *interp, TclMacLoadInfo *loadInfo, * as we are going to search for specific entry points passed to us. */ - err = GetDiskFragment(&fileSpec, offset, length, fragName, + err = GetDiskFragment(&loadInfo->fileSpec, offset, length, fragName, kLoadCFrag, &connID, &dummy, errName); if (err != fragNoErr) { p2cstr(errName); + if(pathPtr) { Tcl_AppendResult(interp, "couldn't load file \"", Tcl_GetString(pathPtr), "\": ", errName, (char *) NULL); + } else if(sym) { + Tcl_AppendResult(interp, "couldn't load library \"", + sym, + "\": ", errName, (char *) NULL); + } return TCL_ERROR; } @@ -290,7 +296,7 @@ TclpFindSymbol(interp, loadHandle, symbol) */ Tcl_UtfToExternalDString(NULL, symbol, -1, &ds); Tcl_DStringSetLength(&ds, Tcl_DStringLength(&ds) - 5); - res = TryToLoad(interp, loadInfo, Tcl_DStringValue(&ds)); + res = TryToLoad(interp, loadInfo, NULL, Tcl_DStringValue(&ds)); Tcl_DStringFree(&ds); if (res != TCL_OK) { return NULL; @@ -340,7 +346,7 @@ TclpUnloadFile(loadHandle) if (loadInfo->loaded) { CloseConnection((CFragConnectionID*) &(loadInfo->connID)); } - ckfree(loadInfo); + ckfree((char*)loadInfo); } /* diff --git a/mac/tclMacOSA.c b/mac/tclMacOSA.c index 67275c6..0a38396 100644 --- a/mac/tclMacOSA.c +++ b/mac/tclMacOSA.c @@ -12,7 +12,7 @@ * See the file "License Terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclMacOSA.c,v 1.9 2002/04/08 09:02:48 das Exp $ + * RCS: @(#) $Id: tclMacOSA.c,v 1.10 2002/10/09 11:54:30 das Exp $ */ #define MAC_TCL @@ -78,74 +78,74 @@ typedef struct tclOSAComponent { static pascal OSErr TclOSAActiveProc _ANSI_ARGS_((long refCon)); static int TclOSACompileCmd _ANSI_ARGS_((Tcl_Interp *interp, tclOSAComponent *OSAComponent, int argc, - char **argv)); + CONST char **argv)); static int tclOSADecompileCmd _ANSI_ARGS_((Tcl_Interp * Interp, tclOSAComponent *OSAComponent, int argc, - char **argv)); + CONST char **argv)); static int tclOSADeleteCmd _ANSI_ARGS_((Tcl_Interp *interp, tclOSAComponent *OSAComponent, int argc, - char **argv)); + CONST char **argv)); static int tclOSAExecuteCmd _ANSI_ARGS_((Tcl_Interp *interp, tclOSAComponent *OSAComponent, int argc, - char **argv)); + CONST char **argv)); static int tclOSAInfoCmd _ANSI_ARGS_((Tcl_Interp *interp, tclOSAComponent *OSAComponent, int argc, - char **argv)); + CONST char **argv)); static int tclOSALoadCmd _ANSI_ARGS_((Tcl_Interp *interp, tclOSAComponent *OSAComponent, int argc, - char **argv)); + CONST char **argv)); static int tclOSARunCmd _ANSI_ARGS_((Tcl_Interp *interp, tclOSAComponent *OSAComponent, int argc, - char **argv)); + CONST char **argv)); static int tclOSAStoreCmd _ANSI_ARGS_((Tcl_Interp *interp, - tclOSAComponent *OSAComponent, int argc, char - **argv)); + tclOSAComponent *OSAComponent, int argc, + CONST char **argv)); static void GetRawDataFromDescriptor _ANSI_ARGS_((AEDesc *theDesc, Ptr destPtr, Size destMaxSize, Size *actSize)); static OSErr GetCStringFromDescriptor _ANSI_ARGS_(( AEDesc *sourceDesc, char *resultStr, Size resultMaxSize,Size *resultSize)); static int Tcl_OSAComponentCmd _ANSI_ARGS_((ClientData clientData, - Tcl_Interp *interp, int argc, char **argv)); + Tcl_Interp *interp, int argc, CONST char **argv)); static void getSortedHashKeys _ANSI_ARGS_((Tcl_HashTable *theTable, - char *pattern, Tcl_DString *theResult)); + CONST char *pattern, Tcl_DString *theResult)); static int ASCIICompareProc _ANSI_ARGS_((const void *first, const void *second)); static int Tcl_OSACmd _ANSI_ARGS_((ClientData clientData, - Tcl_Interp *interp, int argc, char **argv)); + Tcl_Interp *interp, int argc, CONST char **argv)); static void tclOSAClose _ANSI_ARGS_((ClientData clientData)); -static void tclOSACloseAll _ANSI_ARGS_((ClientData clientData)); +/*static void tclOSACloseAll _ANSI_ARGS_((ClientData clientData));*/ static tclOSAComponent *tclOSAMakeNewComponent _ANSI_ARGS_((Tcl_Interp *interp, char *cmdName, char *languageName, OSType scriptSubtype, long componentFlags)); -static int prepareScriptData _ANSI_ARGS_((int argc, char **argv, +static int prepareScriptData _ANSI_ARGS_((int argc, CONST char **argv, Tcl_DString *scrptData ,AEDesc *scrptDesc)); static void tclOSAResultFromID _ANSI_ARGS_((Tcl_Interp *interp, ComponentInstance theComponent, OSAID resultID)); static void tclOSAASError _ANSI_ARGS_((Tcl_Interp * interp, ComponentInstance theComponent, char *scriptSource)); static int tclOSAGetContextID _ANSI_ARGS_((tclOSAComponent *theComponent, - char *contextName, OSAID *theContext)); + CONST char *contextName, OSAID *theContext)); static void tclOSAAddContext _ANSI_ARGS_((tclOSAComponent *theComponent, char *contextName, const OSAID theContext)); static int tclOSAMakeContext _ANSI_ARGS_((tclOSAComponent *theComponent, - char *contextName, OSAID *theContext)); + CONST char *contextName, OSAID *theContext)); static int tclOSADeleteContext _ANSI_ARGS_((tclOSAComponent *theComponent, - char *contextName)); + CONST char *contextName)); static int tclOSALoad _ANSI_ARGS_((Tcl_Interp *interp, - tclOSAComponent *theComponent, char *resourceName, - int resourceNumber, char *fileName,OSAID *resultID)); + tclOSAComponent *theComponent, CONST char *resourceName, + int resourceNumber, CONST char *fileName,OSAID *resultID)); static int tclOSAStore _ANSI_ARGS_((Tcl_Interp *interp, - tclOSAComponent *theComponent, char *resourceName, - int resourceNumber, char *fileName,char *scriptName)); + tclOSAComponent *theComponent, CONST char *resourceName, + int resourceNumber, CONST char *scriptName, CONST char *fileName)); static int tclOSAAddScript _ANSI_ARGS_((tclOSAComponent *theComponent, char *scriptName, long modeFlags, OSAID scriptID)); static int tclOSAGetScriptID _ANSI_ARGS_((tclOSAComponent *theComponent, - char *scriptName, OSAID *scriptID)); + CONST char *scriptName, OSAID *scriptID)); static tclOSAScript * tclOSAGetScript _ANSI_ARGS_((tclOSAComponent *theComponent, - char *scriptName)); + CONST char *scriptName)); static int tclOSADeleteScript _ANSI_ARGS_((tclOSAComponent *theComponent, - char *scriptName,char *errMsg)); + CONST char *scriptName,char *errMsg)); /* * "export" is a MetroWerks specific pragma. It flags the linker that @@ -357,7 +357,7 @@ Tcl_OSACmd( ClientData clientData, Tcl_Interp *interp, int argc, - char **argv) + CONST char **argv) { static unsigned short componentCmdIndex = 0; char autoName[32]; @@ -581,7 +581,7 @@ Tcl_OSAComponentCmd( ClientData clientData, Tcl_Interp *interp, int argc, - char **argv) + CONST char **argv) { int length; char c; @@ -648,7 +648,7 @@ TclOSACompileCmd( Tcl_Interp *interp, tclOSAComponent *OSAComponent, int argc, - char **argv) + CONST char **argv) { int tclError = TCL_OK; int augment = 1; @@ -736,7 +736,9 @@ TclOSACompileCmd( } makeContext = 1; } else if (c == 'n' && strcmp(argv[0] + 1, "name") == 0) { - resultName = argv[1]; + strncpy(autoName, argv[1], 15); + autoName[15] = '\0'; + resultName = autoName; } else if (c == 'p' && strcmp(argv[0] + 1,"parent") == 0) { /* * Since this implies we are compiling into a context, @@ -790,10 +792,8 @@ TclOSACompileCmd( makeNewContext = true; } else if (tclOSAGetContextID(OSAComponent, resultName, &resultID) == TCL_OK) { - makeNewContext = false; } else { makeNewContext = true; - resultID = kOSANullScript; } /* @@ -802,6 +802,8 @@ TclOSACompileCmd( if (augment && !makeNewContext) { modeFlags |= kOSAModeAugmentContext; } + } else if (resultName == NULL) { + resultName = autoName; /* Auto name the script */ } /* @@ -876,7 +878,7 @@ TclOSACompileCmd( Tcl_DStringValue(&scrptData)); tclError = TCL_ERROR; } else if (osaErr != noErr) { - sprintf(buffer, "Error #%-6d compiling script", osaErr); + sprintf(buffer, "Error #%-6ld compiling script", osaErr); Tcl_AppendResult(interp, buffer, (char *) NULL); tclError = TCL_ERROR; } @@ -909,7 +911,7 @@ tclOSADecompileCmd( Tcl_Interp * interp, tclOSAComponent *OSAComponent, int argc, - char **argv) + CONST char **argv) { AEDesc resultingSourceData = { typeChar, NULL }; OSAID scriptID; @@ -986,7 +988,7 @@ tclOSADeleteCmd( Tcl_Interp *interp, tclOSAComponent *OSAComponent, int argc, - char **argv) + CONST char **argv) { char c,*errMsg = NULL; int length; @@ -1049,7 +1051,7 @@ tclOSAExecuteCmd( Tcl_Interp *interp, tclOSAComponent *OSAComponent, int argc, - char **argv) + CONST char **argv) { int tclError = TCL_OK, resID = 128; char c,buffer[32], @@ -1178,7 +1180,7 @@ tclOSAExecuteCmd( Tcl_DStringValue(&scrptData)); tclError = TCL_ERROR; } else if (osaErr != noErr) { - sprintf(buffer, "Error #%-6d compiling script", osaErr); + sprintf(buffer, "Error #%-6ld compiling script", osaErr); Tcl_AppendResult(interp, buffer, (char *) NULL); tclError = TCL_ERROR; } else { @@ -1213,7 +1215,7 @@ tclOSAInfoCmd( Tcl_Interp *interp, tclOSAComponent *OSAComponent, int argc, - char **argv) + CONST char **argv) { char c; int length; @@ -1293,11 +1295,12 @@ tclOSALoadCmd( Tcl_Interp *interp, tclOSAComponent *OSAComponent, int argc, - char **argv) + CONST char **argv) { int tclError = TCL_OK, resID = 128; char c, autoName[24], - *contextName = NULL, *scriptName = NULL, *resName = NULL; + *contextName = NULL, *scriptName = NULL; + CONST char *resName = NULL; Boolean makeNewContext = false, makeContext = false; AEDesc scrptDesc = { typeNull, NULL }; long modeFlags = kOSAModeCanInteract; @@ -1431,7 +1434,7 @@ tclOSARunCmd( Tcl_Interp *interp, tclOSAComponent *OSAComponent, int argc, - char **argv) + CONST char **argv) { int tclError = TCL_OK, resID = 128; @@ -1445,7 +1448,7 @@ tclOSARunCmd( parentID = kOSANullScript; OSAError osaErr = noErr; OSErr sysErr = noErr; - char *componentName = argv[0]; + CONST char *componentName = argv[0]; OSAID scriptID; if (argc == 2) { @@ -1567,10 +1570,11 @@ tclOSAStoreCmd( Tcl_Interp *interp, tclOSAComponent *OSAComponent, int argc, - char **argv) + CONST char **argv) { int tclError = TCL_OK, resID = 128; - char c, *contextName = NULL, *scriptName = NULL, *resName = NULL; + char c, *contextName = NULL, *scriptName = NULL; + CONST char *resName = NULL; Boolean makeNewContext = false, makeContext = false; AEDesc scrptDesc = { typeNull, NULL }; long modeFlags = kOSAModeCanInteract; @@ -1741,7 +1745,7 @@ tclOSAMakeNewComponent( Tcl_InitHashTable(&newComponent->scriptTable, TCL_STRING_KEYS); if (tclOSAMakeContext(newComponent, global, &globalContext) != TCL_OK) { - sprintf(buffer, "%-6.6d", globalContext); + sprintf(buffer, "%-6.6ld", globalContext); Tcl_AppendResult(interp, "Error ", buffer, " making ", global, " context.", (char *) NULL); goto CleanUp; @@ -1780,7 +1784,7 @@ tclOSAMakeNewComponent( /* TODO -- clean up here... */ } - myActiveProcUPP = NewOSAActiveProc(TclOSAActiveProc); + myActiveProcUPP = NewOSAActiveUPP(TclOSAActiveProc); OSASetActiveProc(newComponent->theComponent, myActiveProcUPP, (long) newComponent); return newComponent; @@ -1886,7 +1890,7 @@ tclOSAClose( static int tclOSAGetContextID( tclOSAComponent *theComponent, - char *contextName, + CONST char *contextName, OSAID *theContext) { Tcl_HashEntry *hashEntry; @@ -1968,7 +1972,7 @@ tclOSAAddContext( static int tclOSADeleteContext( tclOSAComponent *theComponent, - char *contextName) + CONST char *contextName) { Tcl_HashEntry *hashEntry; tclOSAContext *contextStruct; @@ -2010,7 +2014,7 @@ tclOSADeleteContext( static int tclOSAMakeContext( tclOSAComponent *theComponent, - char *contextName, + CONST char *contextName, OSAID *theContext) { AEDesc contextNameDesc = {typeNull, NULL}; @@ -2023,7 +2027,10 @@ tclOSAMakeContext( AEDisposeDesc(&contextNameDesc); if (osaErr == noErr) { - tclOSAAddContext(theComponent, contextName, *theContext); + char name[24]; + strncpy(name, contextName, 23); + name[23] = '\0'; + tclOSAAddContext(theComponent, name, *theContext); } else { *theContext = (OSAID) osaErr; return TCL_ERROR; @@ -2056,10 +2063,10 @@ int tclOSAStore( Tcl_Interp *interp, tclOSAComponent *theComponent, - char *resourceName, + CONST char *resourceName, int resourceNumber, - char *scriptName, - char *fileName) + CONST char *scriptName, + CONST char *fileName) { Handle resHandle; Str255 rezName; @@ -2276,9 +2283,9 @@ int tclOSALoad( Tcl_Interp *interp, tclOSAComponent *theComponent, - char *resourceName, + CONST char *resourceName, int resourceNumber, - char *fileName, + CONST char *fileName, OSAID *resultID) { Handle sourceData; @@ -2397,7 +2404,7 @@ tclOSALoad( static int tclOSAGetScriptID( tclOSAComponent *theComponent, - char *scriptName, + CONST char *scriptName, OSAID *scriptID) { tclOSAScript *theScript; @@ -2484,7 +2491,7 @@ tclOSAAddScript( static tclOSAScript * tclOSAGetScript( tclOSAComponent *theComponent, - char *scriptName) + CONST char *scriptName) { Tcl_HashEntry *hashEntry; @@ -2518,7 +2525,7 @@ tclOSAGetScript( static int tclOSADeleteScript( tclOSAComponent *theComponent, - char *scriptName, + CONST char *scriptName, char *errMsg) { Tcl_HashEntry *hashEntry; @@ -2565,7 +2572,7 @@ TclOSAActiveProc( tclOSAComponent *theComponent = (tclOSAComponent *) refCon; Tcl_DoOneEvent(TCL_DONT_WAIT); - CallOSAActiveProc(theComponent->defActiveProc, theComponent->defRefCon); + InvokeOSAActiveUPP(theComponent->defRefCon, theComponent->defActiveProc); return noErr; } @@ -2621,7 +2628,7 @@ ASCIICompareProc(const void *first,const void *second) static void getSortedHashKeys( Tcl_HashTable *theTable, - char *pattern, + CONST char *pattern, Tcl_DString *theResult) { Tcl_HashSearch search; @@ -2689,7 +2696,7 @@ getSortedHashKeys( static int prepareScriptData( int argc, - char **argv, + CONST char **argv, Tcl_DString *scrptData, AEDesc *scrptDesc) { diff --git a/mac/tclMacPort.h b/mac/tclMacPort.h index 5df25b7..a868733 100644 --- a/mac/tclMacPort.h +++ b/mac/tclMacPort.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: tclMacPort.h,v 1.15 2002/06/05 11:59:44 das Exp $ + * RCS: @(#) $Id: tclMacPort.h,v 1.16 2002/10/09 11:54:34 das Exp $ */ @@ -58,54 +58,8 @@ # include <time.h> # include <unistd.h> # include <utime.h> - -/* - * The following definitions are usually found if fcntl.h. - * However, MetroWerks has screwed that file up a couple of times - * and all we need are the defines. - */ -#ifndef _FCNTL -# define O_RDWR 0x0 /* open the file in read/write mode */ -# define O_RDONLY 0x1 /* open the file in read only mode */ -# define O_WRONLY 0x2 /* open the file in write only mode */ -# define O_APPEND 0x0100 /* open the file in append mode */ -# define O_CREAT 0x0200 /* create the file if it doesn't exist */ -# define O_EXCL 0x0400 /* if the file exists don't create it again */ -# define O_TRUNC 0x0800 /* truncate the file after opening it */ -#endif -/* - * MetroWerks stat.h file is rather weak. The defines - * after the include are needed to fill in the missing - * defines. - */ - +# include <fcntl.h> # include <stat.h> -# ifndef S_IFIFO -# define S_IFIFO 0x0100 -# endif -# ifndef S_IFBLK -# define S_IFBLK 0x0600 -# endif -# ifndef S_ISLNK -# define S_ISLNK(m) (((m)&(S_IFMT)) == (S_IFLNK)) -# endif -# ifndef S_ISSOCK -# define S_ISSOCK(m) (((m)&(S_IFMT)) == (S_IFSOCK)) -# endif -# ifndef S_IRWXU -# define S_IRWXU 00007 /* read, write, execute: owner */ -# define S_IRUSR 00004 /* read permission: owner */ -# define S_IWUSR 00002 /* write permission: owner */ -# define S_IXUSR 00001 /* execute permission: owner */ -# define S_IRWXG 00007 /* read, write, execute: group */ -# define S_IRGRP 00004 /* read permission: group */ -# define S_IWGRP 00002 /* write permission: group */ -# define S_IXGRP 00001 /* execute permission: group */ -# define S_IRWXO 00007 /* read, write, execute: other */ -# define S_IROTH 00004 /* read permission: other */ -# define S_IWOTH 00002 /* write permission: other */ -# define S_IXOTH 00001 /* execute permission: other */ -# endif #if __MSL__ < 0x6000 # define isatty(arg) 1 diff --git a/mac/tclMacProjects.sea.hqx b/mac/tclMacProjects.sea.hqx index a0686bf..178f9d6 100644 --- a/mac/tclMacProjects.sea.hqx +++ b/mac/tclMacProjects.sea.hqx @@ -1,3864 +1,3759 @@ (This file must be converted with BinHex 4.0) -:%R4ME%eKBe"bEfTPBh4c,R0PB3""8&"-BA9cG#%!!!%Y3J!"U09VQe0dG@CQ5A3 +:%R4ME%eKBe"bEfTPBh4c,R0PB3""8&"-BA9cG#!!!!%Z[J!"NlA,LP0dG@CQ5A3 J+'-T-6Nj0bda16Ni)%&XB@4ND@iJ8hPcG'9YFb`J5@jM,L`JD(4dF$S[,hH3!bj -KE'&NC'PZFhPc,Q0[E5p6G(9QCNPd,`d+'J!&%!!",8)!N!0b!!%!N!0b)aJ0TD9 -5CA0PFRCPC+@P!+@3"!%!!$J!4,Ea6[1fm8mc!*!0#)B&!*!$cJ!Q)L%!!5ad!!) -Y2L"#G@PXC!!!&e)!43!L!9-#3J(!rj!%!alrq2r`bd3!!)!!N!HPN!3"!!!f!%5 -d(A&cZ#2FJ!#3!h)!!5`V!*!$FJ!'h`-!!!%S!#BJ1`!"+`-!##dq)(4ME!!!M%i -!I3!3!GN"p!(!rj!%!Klrq2r`bd!!!)!!N!HPN!3"!!"!!)#f"X)LYh!(iJ#3!mi -!!#$+!*!$cJ!3j3B!!PXD!!!I2J#3"!m!3Np"Ae4ME&0SC@aXFbl2J!!!3,*069" -b3eG*43%!rj!%!*!+J(!!N!C#`G4TA)3FKdFB9Vjc[S"j9Z"(P%(IQk8f+56NDRU -5pB3pqpZ&4hM@%p(`!kJSMT&0c@IMqN+AIQQ9Ur&[KCX)&PHl[plQD92bUEJb1P# -LX&0[E0r+,YJ!B(fUT5+hHLGS(jYE-EDeN`13!&1EZ"El+m5VENB!"J``M8UlNiQ -*(K)5LJFl$C9ckF#P20mJCC[TGPc*B*!!T5pZ5009m21P8ZTTCBU2+Ub4D*YV8kk -&5VpeDRcm(+!3J&`P4RKN'`CE,lET`HT,,2)NaZkVbaTFPB`#Y*65c8m9pD`1hpk -D5R6B5ZcCmU8r,"aD4[-FST3F6j2i#IRF#Rk#4[)@AVV58T*LT@hf`4@cX#h#AMD -i"lQ"f,H)S2(i'[DL3[0FJS*IV3$[L$*fa@f"9!Ml@JqKPYDcMPDKYNhTa2K'"BD -lLV0`[99B8HY"QZTJ%c1Akp8rRPUL)*,AFMD@+RE(%FLD9U#3!0FeKP'8-k&-k,* -4+aT'SqiJ'&R4K$KdL8Hb2BEN+"Hf9rp)K#48hNrDmp"JH6!iLAY`TqhFBS09JVC -L12KTL)%S0&b5Y6HqHl(b%)Dr,91$h'%if2jIKi`VrZ@5K%'SP@`cb)96C[ccAQ% -N-qDTZB6aJHD'II09NlD59M4jLbT6YflN-MPVZFfQ%cHIGe%2CmNV"+1PYTS+eVM -q)45!m&3bP,3D@Y0GNHd$C,UPVUPl4@5+[pp!40YK4jF$)'f+60X[QT4&UhRC((* -aSL@1mNCcACUe@1CK[EDGMkVJK0Sc8d+MCCRG)[qcT[mcM9(bb!J2@HE"liQ3!0Q -IEe#NCTeVM4j8+1@[(C--KjifTc0LG,"e8mYMDaDL5#Q5P4ZqD"KF`[r6#5'$er0 -EQa6J%&Gq-bDhUB[EmV8V1EK$*@@b+e#CZ!Qif!ST,@)2aKE0iIkrj*S3-`bZKBD -PqYH+`FiDQEqSM[9epiMp$49kTT+aZ223MdY$S8D2&Z2*k@Vjf$l0Z()"m&KQIi@ -l3dGB@B!&a1[1F!SL#HCdb#6N[e"4D&LR,$1CA$1Zak2pfKR6b-VArq56D1i)lRE -BE[A0!q5D3X$FYC!!I0jrVYdbk6rJGheYN!#J4bk'9c42D+MmeJQlD&MDGpe@21` -8ZdHNJp9c*rYR[UJ2Hfk`ErACJAP9#If)V'p5*1@S!5Y%+HmT%#lMCG0`+c(Qq-N -@3UBEM8LBB0fmBbam#k`a6C!!`,B1rccpZ!DfaVc)YDA&@dMXe6Lh8I'+(KkN5YQ -d13TS*(VlCDir!A6-dPaHR0QafC@RUpQ!6-$T$PF3X$0d6%(!#'2aVhI%i5FHP)Q -q&J)9-Z@$LH*J$iB*(q5EBVJ0jj3G,YI+c-`3YZ4GbK$#(+DKEM*iZdER$5lhl,& -Aji#rTEBMHU%X)0U2US&Pp,cRSEH)RGbBXlm5&"*iL!2DdUGcD$92ZI`D&-IATrN -NG,!X,V!5j%!&fq$JA*cUIrha2P#Mh2LX#mCTQJZJ`)KdHJLE+mMQrh3*[E8Jdk, -9Y&%0CGJAGQ#&[Vf22qKjG&*2Y+F$-L5"T35f-jq%!12"hb0$CD)-9$q+BAA[#q[ -mZ2bEN!#H),UV(NV%)prrFI!Zl2,3h2(J9GPk0+&ibYfajY2*EVGE-kl"B+Jk`$6 -IAMAXR`6EdZi"G@)EGV!#X8'#!%(c'"G[lpM0U%k9Z1rj90[5)Hi1q#BCDFSdLD1 -Af29+!b)T3i*E#X)#5TYbQ$l0hm&E-mPjfm[3!2ce@@FS5!qV2[[J3Q9Vc+4Jp3( -Qf3IU'!0)f4lPFS6%[rI(q#L#,E2SKXKVe,446)fl'TYm#L(QV`"ZUSY`+1dip6U -@*'0UAb@2Im4&Z)5II5HcS@b0TZUdh@J2Hd6d4jc-%,)[C-N`EfH#mQa*m"4`R`b -ah4X2AImZii5fH),c&CpI+&4mP8$NL,2G*pjFqN8V2'qZf#ECRTJ[VA8Um-@!Zj& -S8DZGrjDS["SU(35G2PMZU$80U)%qh%Np+NAG&6fPeqcA@fG2JPak82@"DQ33*%2 -%Dp(KcR0dQ`*6RC9A-l03fp$[F*c8jSpj1dpqr%cX)+e**Vak`"`dmXYU`XJ@mD# -%dUfU`+jGQ@88Zh(Fc,B&5'l``8A8bhHS#hS&)Hje"15D5k4lQP-lYFlM%c9Y+&- -CpaSc9"SIG1$!MMcDTqalhK`M[Qm!!dmMDJA1Ei$h#IA6Q-"iAFGN*R!bG&H3!!E -&YTABa85dS9AA`mSm*M#Y$j21r5)!`RFkKB,&'m8Xr43i8("3L#P8kGKQ6P81i6e -`-aTa49mrNS#e8BD%&ekQ!Mj0`S`NcZAVhLJPU-L#$c%[f$+-Sk-YI,YKp@8mBUc -#4(%jD(4mj+LAEZTTpEFMc%R@GUUmpEq,6E%3D5-B-j8MpPr-@&8B4Ej9C69E8p, -T066D$(HiN!!XE!8j9LjlJ26SU'8f!*(+6@b%YH!"`QZc[PiEkKS&([FTCp!jp0e -i-jbATcBTUm!bb1*Lm@F!m88jpkVPCq'FQb6444jRI@8dNUUXmMJlJ'J,(ETECb[ -Lfclqd5HeN!"kpS(TdGqc%S@-V!iQSX`ii6AG2C!!bP[q0'PQmH@2K8rrL*PQS44 -1B5h`)0p$Pbq%DmJfPEAUYjI&i,Y[J8#"qTZETRb6(YT-bD$*qVRNPdCPfFQeqbU -ZYaEr,e##+Ph0@)+mdd@-CY1M64*!HrfUY!'KeaN#`*!!8C(qpZX@MCfU9$h@J9H -SJ8bA@&1[G%*%F+0*ZKCmf`baUkJr('M0#%!Ch8UGiKC4Z,Y!1fP@3eA6MeUVqdb -Dedji3Z4QQF)ciFd-9D4FS(BISI!Z!bTPJZZ3!("Y2P6DVHC@38iFq31IZPUf2VR -pj!B6jT*'ANUd'ml8e9RVQ"k0``c)Z2d*kTAGLm,21P$X3FR!"Xe$2bYD#@4%%9[ -,TET3EL"PF`b$%P4YCFFEkbI'1MR,&%GM-Q+fA4D$0'"p",B-D%SL!Pj!RhJ[McR -YqX`jfm#ajGLF%!B#,YJfD5NY6#QjlK)AA,QH0kbT6rRdZLCGi&9+&pFfXakXL(l -dJUre)[D3!1"-QlT+r'3'fTHIJ+P*c`&c2QYj-2iU`H'h!ZaQJm&rY,E6lm69j`C -0FN[$[QakJ2Sa5+(XIF`qk@CTD3l"!rSpkB&'f(*P`p6L+D93*$C3I"P$26F8Ye- -&Xmrdi9eZcc06%--!1'1-b658"lJ2,hJN