diff options
-rw-r--r-- | generic/tclFileName.c | 11 | ||||
-rw-r--r-- | tests/winFCmd.test | 10 |
2 files changed, 16 insertions, 5 deletions
diff --git a/generic/tclFileName.c b/generic/tclFileName.c index f87c094..4ab7fa8 100644 --- a/generic/tclFileName.c +++ b/generic/tclFileName.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: tclFileName.c,v 1.66 2005/03/15 18:40:58 vincentdarley Exp $ + * RCS: @(#) $Id: tclFileName.c,v 1.67 2005/03/15 22:10:29 vincentdarley Exp $ */ #include "tclInt.h" @@ -187,17 +187,20 @@ ExtractWinRoot(path, resultPtr, offset, typePtr) } } else if ((path[0] == 'p' || path[0] == 'P') && (path[1] == 'r' || path[1] == 'R') - && (path[2] == 'n' || path[2] == 'N')) { + && (path[2] == 'n' || path[2] == 'N') + && path[3] == '\0') { /* Have match for 'prn' */ abs = 3; } else if ((path[0] == 'n' || path[0] == 'N') && (path[1] == 'u' || path[1] == 'U') - && (path[2] == 'l' || path[2] == 'L')) { + && (path[2] == 'l' || path[2] == 'L') + && path[3] == '\0') { /* Have match for 'nul' */ abs = 3; } else if ((path[0] == 'a' || path[0] == 'A') && (path[1] == 'u' || path[1] == 'U') - && (path[2] == 'x' || path[2] == 'X')) { + && (path[2] == 'x' || path[2] == 'X') + && path[3] == '\0') { /* Have match for 'aux' */ abs = 3; } diff --git a/tests/winFCmd.test b/tests/winFCmd.test index df8698a..0872add 100644 --- a/tests/winFCmd.test +++ b/tests/winFCmd.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: winFCmd.test,v 1.36 2005/03/15 18:07:56 vincentdarley Exp $ +# RCS: @(#) $Id: winFCmd.test,v 1.37 2005/03/15 22:10:30 vincentdarley Exp $ # if {[lsearch [namespace children] ::tcltest] == -1} { @@ -1120,6 +1120,14 @@ test winFCmd-18.1.5 {Windows reserved path names} -constraints win -body { file pathtype lpt4 } -result "relative" +test winFCmd-18.1.6 {Windows reserved path names} -constraints win -body { + file pathtype nul +} -result "absolute" + +test winFCmd-18.1.7 {Windows reserved path names} -constraints win -body { + file pathtype null +} -result "relative" + test winFCmd-18.2 {Windows reserved path names} -constraints win -body { file pathtype com1: } -result "absolute" |