summaryrefslogtreecommitdiffstats
path: root/generic/tclFCmd.c
Commit message (Collapse)AuthorAgeFilesLines
* closes [270f78ca95b642fb]: fix the race condition for `file mkdir` if some ↵sebres2018-07-091-14/+18
| | | | worker deletes directory immediately after the succeded create inside 3rd worker.
* amend to [5acb57c7aec45e05]: set code to TCL_ERROR, because primitives from ↵sebres2018-04-091-1/+1
| | | | tclIOUtil return -1
* [27b682284974d0cd] command "file delete": avoid possible race condition if ↵sebres2018-04-061-9/+9
| | | | | file/directory deleted after call of lstat, so bypass ENOENT error code. Thanks to Rainer Müller (aka raimue)
* Eliminate unnessessary end-of-line spacing. No functional change.jan.nijtmans2015-10-041-1/+1
|
* 3597000 Consistent [file copy] result.dgp2013-03-191-10/+7
|\
| * 3597000 Consistent [file copy] result.dgp2013-03-191-8/+7
| |
* | Unbreak msvc builds, by depending on tclPort.h for inclusion of <sys/stat.h>.jan.nijtmans2013-02-101-6/+0
| |
* | revert [8abba84224], and make sure that every source file that uses ↵jan.nijtmans2013-01-171-0/+1
| | | | | | | | Tcl_StatBuf has an "#include <sys/stat.h>" before including tcl.h
* | Reference to correct Bug #numberjan.nijtmans2012-08-061-1/+1
|\ \ | |/
| * Reference to correct Bug #numberjan.nijtmans2012-08-061-1/+1
| |
* | [Bug 3508771] Wrong Tcl_StatBuf used on MinGWjan.nijtmans2012-03-271-1/+1
|\ \ | |/ | | | | [Bug 2015723] duplicate inodes from file stat on windows (but now for cygwin as well)
| * [Bug 3508771] Wrong Tcl_StatBuf used on MinGWjan.nijtmans2012-03-271-14/+17
| | | | | | [Bug 2015723] duplicate inodes from file stat on windows
* | Bug-3474726 minGW Tcl_StatBuf not defined correctly in tcl.hjan.nijtmans2012-01-211-0/+5
|\ \ | |/
| * [Bug-3474726] minGW Tcl_StatBuf not defined correctly in tcl.hjan.nijtmans2012-01-191-0/+5
| |
| * [Bug 3388350] mingw64 compiler warningsjan.nijtmans2011-08-161-0/+1
| | | | | | | | n mingw, sys/stat.h must be included before winsock2.h, so make sure of that
* | (TclFileAttrsCmd): Added commands to reset the typePtr of the Tcl_Obj* whose ↵andreask2011-04-201-0/+2
| | | | | | | | | | | | | | int-rep was just purged. Required to prevent a dangling IndexRep* to reused, smashing the heap. See also the entries at 2011-04-16 and 2011-03-24 for the history of the problem. Note also bug 2857044. This is the original report and fix of such issues for HEAD.
* | Added code to try to tame the [file attributes] guts, while trying to simplifydkf2011-04-161-9/+12
| | | | | | | | things enough that I can puzzle out AK's TclVFS problems. I suspect this is not a real fix though; just an attempt to make the problem tractable.
* | Ensure that any reference to temporary index tables is squelched immediatelydkf2011-03-241-0/+6
|\ \ | |/ | | rather than hanging around to trip us up in the future.
| * Ensure that any reference to temporary index tables is squelched immediatelydkf2011-03-241-0/+10
| | | | | | rather than hanging around to trip us up in the future.
* | Now that we're no longer using SCM based on RCS, the RCS Keyword lines causedgp2011-03-021-2/+0
|\ \ | |/ | | more harm than good. Purged them.
| * Now that we're no longer using SCM based on RCS, the RCS Keyword lines causedgp2011-03-011-2/+0
| | | | | | more harm than good. Purged them.
| * * generic/tclFCmd.c (TclFileMakeDirsCmd): fix to race condition inhobbs2005-08-171-5/+31
| | | | | | | | file mkdir (backport from head 2005-06-13) [Bug 1217375]
| * file copy empty filename bug fixvincentdarley2003-06-231-1/+9
| |
* | Backported fix for bug #2015723patthoyts2008-07-211-5/+7
| |
* | merge stable branch onto HEADdgp2007-12-131-1/+1
| |
* | Generate literal values more efficiently using TclNewLiteralStringObj macro.dkf2007-09-171-9/+9
| |
* | Silence constness warnings for TclStackFree when building with msvc.patthoyts2007-06-281-2/+2
| |
* | * generic/tclInt.decls: Revised the interfaces of the routinesdgp2007-06-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclExecute.c: TclStackAlloc and TclStackFree to make them easier for callers to use (or more precisely, harder to misuse). TclStackFree now takes a (void *) argument which is the pointer intended to be freed. TclStackFree will panic if that's not actually the memory the call will free. TSA/TSF also now tolerate receiving (interp == NULL), in which case they simply fall back to be calls to Tcl_Alloc/Tcl_Free. * generic/tclIntDecls.h: make genstubs * generic/tclBasic.c: Updated callers * generic/tclCmdAH.c: * generic/tclCmdIL.c: * generic/tclCompCmds.c: * generic/tclCompExpr.c: * generic/tclCompile.c: * generic/tclFCmd.c: * generic/tclFileName.c: * generic/tclIOCmd.c: * generic/tclIndexObj.c: * generic/tclInterp.c: * generic/tclNamesp.c: * generic/tclProc.c: * generic/tclTrace.c: * unix/tclUnixPipe.c:
* | Whitespace policing, replacing commas in varargs with constant string ↵Kevin B Kenny2007-04-201-2/+2
| | | | | | | | catenation, and fixed an oversight in the fix for NZA time zones.
* | Handle creation of Tcl_Objs from constant strings better (easier to use, moredkf2007-04-101-2/+4
| | | | | | | | efficient). After [Patch 1529526] (afredd)
* | * generic/tclBasic.c: Replace arrays on the C stack and ckallocdgp2007-04-021-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | * generic/tclExecute.c: calls with TclStackAlloc calls to use memory * generic/tclFCmd.c: on Tcl's evaluation stack. * generic/tclFileName.c: * generic/tclIOCmd.c: * generic/tclIndexObj.c: * generic/tclInterp.c: * generic/tclNamesp.c: * generic/tclTrace.c: * unix/tclUnixPipe.c:
* | ANSIfy. Also converted some deeply nested code to a less nested form for ↵dkf2005-11-011-81/+76
| | | | | | | | easier reading.
* | Getting more systematic about styledkf2005-07-241-280/+335
| |
* | correct fix to file mkdirvincentdarley2005-06-131-4/+7
| |
* | fix to race condition in file mkdir and fix to glob documentationvincentdarley2005-06-091-3/+27
| |
* | Merged kennykb-numerics-branch back to the head; TIPs 132 and 232Kevin B Kenny2005-05-101-1/+1
| |
* | With vfs permissions can exist on non-unix filesystemsvincentdarley2005-01-141-3/+1
| |
* | Stop reliance on absolute attribute indexes with helper function [Bug 1100671]dkf2005-01-141-5/+8
| |
* | * generic/tclInt.h (Tcl*InterpState): New internal routinesdgp2004-10-191-7/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclResult.c (Tcl*InterpState): TclSaveInterpState, TclRestoreInterpState, and TclDiscardInterpState are superior replacements for Tcl_(Save|Restore|Discard)Result. Intent is that these routines will be converted to public routines after TIP approval. * generic/tclBasic.c (TclEvalObjvInternal): * generic/tclDictObj.c (DictUpdateCmd, DictWithCmd): * generic/tclIOGT.c (ExecuteCallback): * generic/tclTrace.c (Trace*Proc,TclCheck*Traces,TclCallVarTraces): Callers of Tcl_*Result updated to call the new routines. The calls were relocated in several cases to perform save/restore operations only when needed. * generic/tclEvent.c (HandleBgErrors): * generic/tclFCmd.c (CopyRenameOneFile): Calls to Tcl_*Result that were eliminated because they appeared to serve no useful purpose, typically saving/restoring an error message, only to throw it away.
* | * generic/tclBasic.c:dgp2004-10-061-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclBinary.c: * generic/tclCmdAH.c: * generic/tclCmdIL.c: * generic/tclCmdMZ.c: * generic/tclCompExpr.c: * generic/tclDictObj.c: * generic/tclEncoding.c: * generic/tclExecute.c: * generic/tclFCmd.c: * generic/tclHistory.c: * generic/tclIndexObj.c: * generic/tclInterp.c: It is a poor practice to directly set or append to the value of the objResult of an interp, because that value might be shared, and in that circumstance a Tcl_Panic() will be the result. Searched for example of this practice and replaced with safer alternatives, often using the Tcl_AppendResult() routine that dkf just rehabilitated.
* | Add braces round if body...dkf2004-10-061-2/+4
| |
* | Patch 922727 committed. Implements three changes:dgp2004-04-061-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclInt.h: Reworked the Tcl header files into a clean * unix/tclUnixPort.h: hierarchy where tcl.h < tclPort.h < tclInt.h * win/tclWinInt.h: and every C source file should #include * win/tclWinPort.h: at most one of those files to satisfy its declaration needs. tclWinInt.h and tclWinPort.h also better organized so that tclWinPort.h includes the Windows implementation of cross-platform declarations, while tclWinInt.h makes declarations that are available on Windows only. * generic/tclBinary.c (TCL_NO_MATH): Deleted the generic/tclMath.h * generic/tclMath.h (removed): header file. The internal Tcl * macosx/Makefile (PRIVATE_HEADERS): header, tclInt.h, has a * win/tcl.dsp: #include <math.h> directly, and file external to Tcl needing libm should do the same. * win/Makefile.in (WIN_OBJS): Deleted the win/tclWinMtherr.c file. * win/makefile.bc (TCLOBJS): It's a vestige from matherr() days * win/makefile.vc (TCLOBJS): gone by. * win/tcl.dsp: * win/tclWinMtherr.c (removed):
* | Removed support for Mac OS Classic platform [Patch 918142]das2004-03-171-2/+2
| |
* | filesystem fixes for '-force' consistency and picky compilersvincentdarley2004-01-291-1/+17
| |
* | filesystem optimisation -- Three main issues accomplished: (1) cleaned up ↵vincentdarley2004-01-211-6/+26
| | | | | | | | variable names in
* | filesystem fixes -- see ChangeLogvincentdarley2003-06-231-1/+9
| |
* | Implementation of TIP 118:das2003-05-141-11/+19
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclFCmd.c (TclFileAttrsCmd): return the list of attributes that can be retrieved without error for a given file, instead of aborting the whole command when any error occurs. * unix/tclUnixFCmd.c: added support for new file attributes and for copying Mac OS X file attributes & resource fork during [file copy]. * generic/tclInt.decls: added declarations of new external commands needed by new file attributes support in tclUnixFCmd.c. * macosx/tclMacOSXFCmd.c (new): Mac OS X specific implementation of new file attributes and of attribute & resource fork copying. * mac/tclMacFCmd.c: added implementation of -rsrclength attribute & fixes to other attributes for consistency with OSX implementation. * mac/tclMacResource.c: fixes to OSType handling. * doc/file.n: documentation of [file attributes] changes. * unix/configure.in: check for APIs needed by new file attributes. * unix/Makefile.in: * unix/tcl.m4: added new platform specifc tclMacOSXFCmd.c source. * unix/configure: * generic/tclStubInit.c: * generic/tclIntPlatDecls.h: regen. * tools/genStubs.tcl: fixes to completely broken code trying to prevent overlap of "aqua", "macosx", "x11" and "unix" stub entries. * tests/unixFCmd.test: added tests of -readonly attribute. * tests/macOSXFCmd.test (new): tests of macosx file attributes and of preservation of attributes & resource fork during [file copy]. * tests/macFCmd.test: restore -readonly attribute of test dir, as otherwise its removal can fail on unices supporting -readonly.
* [Patch #591647] (darley)hobbs2002-08-081-2/+4
| | | | | | (CopyRenameOneFile): this is currently disabled by default until further issues with such behavior (like relative links) can be handled correctly.
* * tests/fCmd.test:hobbs2002-08-081-3/+53
| | | | | | | | | * tests/unixFCmd.test: updated tests for new link copy behavior. * generic/tclFCmd.c (CopyRenameOneFile): changed the behavior to follow links to endpoints and copy that file/directory instead of just copying the surface link. This means that trying to copy a link that has no endpoint (danling link) is an error. [Patch #591647] (darley)
* fix to knownBug testvincentdarley2002-07-181-1/+13
|