summaryrefslogtreecommitdiffstats
path: root/tests/fCmd.test
diff options
context:
space:
mode:
authordas <das>2004-11-11 01:15:29 (GMT)
committerdas <das>2004-11-11 01:15:29 (GMT)
commit70c7763d03734b6a1bca07c431abc928cb7bff8a (patch)
treecf50bdc7f2686f6ac20a0fc3bf2ff63a3ff825b4 /tests/fCmd.test
parent89675228f03f60dc605bc085eaa2ac337dcfef01 (diff)
downloadtcl-70c7763d03734b6a1bca07c431abc928cb7bff8a.zip
tcl-70c7763d03734b6a1bca07c431abc928cb7bff8a.tar.gz
tcl-70c7763d03734b6a1bca07c431abc928cb7bff8a.tar.bz2
* tests/fCmd.test:
* unix/tclUnixFCmd.c (TraverseUnixTree): added option to rewind() the readdir() loop whenever the source hierarchy has been modified by traverseProc (e.g. by deleting files); this is required to ensure complete traversal of the source hierarchy on certain filesystems like HFS+. Added test for failing recursive delete on Mac OS X that was due to this. [Bug 1034337]
Diffstat (limited to 'tests/fCmd.test')
-rw-r--r--tests/fCmd.test11
1 files changed, 10 insertions, 1 deletions
diff --git a/tests/fCmd.test b/tests/fCmd.test
index 0b1de7e..6d3d059 100644
--- a/tests/fCmd.test
+++ b/tests/fCmd.test
@@ -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: fCmd.test,v 1.26.2.4 2003/10/07 15:57:36 dgp Exp $
+# RCS: @(#) $Id: fCmd.test,v 1.26.2.5 2004/11/11 01:15:29 das Exp $
#
if {[lsearch [namespace children] ::tcltest] == -1} {
@@ -1829,6 +1829,15 @@ test fCmd-20.1 {TraverseUnixTree : failure opening a subdirectory directory } \
set result
} {1}
+test fCmd-20.2 {TraverseUnixTree : recursive delete of large directory: Bug 1034337} \
+ {unix notRoot} {
+ catch {file delete -force -- tfa}
+ file mkdir tfa
+ for {set i 1} {$i <= 200} {incr i} {createfile tfa/testfile_$i}
+ set result [catch {file delete -force tfa} msg]
+ while {[catch {file delete -force tfa}]} {}
+ list $result $msg
+} {0 {}}
#
# Feature testing for TclCopyFilesCmd