summaryrefslogtreecommitdiffstats
path: root/tests/fileName.test
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2009-08-18 14:43:58 (GMT)
committerdgp <dgp@users.sourceforge.net>2009-08-18 14:43:58 (GMT)
commit2fcbc1a3742e8947645f3165956792424d64c635 (patch)
tree642b85e0a955995f7d32ec5bcc8f7246392ce7d4 /tests/fileName.test
parent9b60842d16319877dbd4d5690699e7f17908392b (diff)
downloadtcl-2fcbc1a3742e8947645f3165956792424d64c635.zip
tcl-2fcbc1a3742e8947645f3165956792424d64c635.tar.gz
tcl-2fcbc1a3742e8947645f3165956792424d64c635.tar.bz2
* generic/tclPathObj.c: Added NULL check to prevent crashes during
* tests/fileName.test: [glob]. [Bug 2837800]
Diffstat (limited to 'tests/fileName.test')
-rw-r--r--tests/fileName.test34
1 files changed, 33 insertions, 1 deletions
diff --git a/tests/fileName.test b/tests/fileName.test
index 97bbc31..cb7f1a3 100644
--- a/tests/fileName.test
+++ b/tests/fileName.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: fileName.test,v 1.51.8.4 2009/03/27 19:16:49 dgp Exp $
+# RCS: @(#) $Id: fileName.test,v 1.51.8.5 2009/08/18 14:43:59 dgp Exp $
if {[lsearch [namespace children] ::tcltest] == -1} {
package require tcltest
@@ -1590,6 +1590,38 @@ test fileName-20.4 {Bug 1750300} -setup {
removeDirectory foo
} -result 0
+test fileName-20.5 {Bug 2837800} -setup {
+ set dd [makeDirectory isolate]
+ set d [makeDirectory ./~foo $dd]
+ makeFile {} test $d
+ set savewd [pwd]
+ cd $dd
+} -body {
+ glob */test
+} -cleanup {
+ cd $savewd
+ removeFile test $d
+ removeDirectory ./~foo $dd
+ removeDirectory isolate
+} -result ~foo/test
+
+test fileName-20.6 {Bug 2837800} -setup {
+ # Recall that we have $env(HOME) set so that references
+ # to ~ point to [temporaryDirectory]
+ makeFile {} test ~
+ set dd [makeDirectory isolate]
+ set d [makeDirectory ./~ $dd]
+ set savewd [pwd]
+ cd $dd
+} -body {
+ glob -nocomplain */test
+} -cleanup {
+ cd $savewd
+ removeDirectory ./~ $dd
+ removeDirectory isolate
+ removeFile test ~
+} -result {}
+
# cleanup
catch {file delete -force C:/globTest}
cd [temporaryDirectory]