summaryrefslogtreecommitdiffstats
path: root/generic/tclIOUtil.c
diff options
context:
space:
mode:
authorvincentdarley <vincentdarley>2004-01-29 10:28:18 (GMT)
committervincentdarley <vincentdarley>2004-01-29 10:28:18 (GMT)
commitf5c319ed1e839e9256fcad85b69c4fde1d5d7c97 (patch)
treebc4f25a47a8614d6ef6beed61ae233eb487c80df /generic/tclIOUtil.c
parent6d7cd4ec5de7d8e50e829fb37492ab7ca3a2f43a (diff)
downloadtcl-f5c319ed1e839e9256fcad85b69c4fde1d5d7c97.zip
tcl-f5c319ed1e839e9256fcad85b69c4fde1d5d7c97.tar.gz
tcl-f5c319ed1e839e9256fcad85b69c4fde1d5d7c97.tar.bz2
filesystem fixes for '-force' consistency and picky compilers
Diffstat (limited to 'generic/tclIOUtil.c')
-rw-r--r--generic/tclIOUtil.c22
1 files changed, 17 insertions, 5 deletions
diff --git a/generic/tclIOUtil.c b/generic/tclIOUtil.c
index b06885c..6e15ab7 100644
--- a/generic/tclIOUtil.c
+++ b/generic/tclIOUtil.c
@@ -17,7 +17,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclIOUtil.c,v 1.94 2004/01/23 11:03:33 vincentdarley Exp $
+ * RCS: @(#) $Id: tclIOUtil.c,v 1.95 2004/01/29 10:28:20 vincentdarley Exp $
*/
#include "tclInt.h"
@@ -999,6 +999,17 @@ Tcl_FSMatchInDirectory(interp, result, pathPtr, pattern, types)
* flag is very important. */
{
Tcl_Filesystem *fsPtr;
+
+ if (types != NULL && types->type & TCL_GLOB_TYPE_MOUNT) {
+ /*
+ * We don't currently allow querying of mounts by external code
+ * (a valuable future step), so since we're the only function
+ * that actually knows about mounts, this means we're being
+ * called recursively by ourself. Return no matches.
+ */
+ return TCL_OK;
+ }
+
if (pathPtr != NULL) {
fsPtr = Tcl_FSGetFileSystemForPath(pathPtr);
} else {
@@ -3261,10 +3272,11 @@ FsListMounts(pathPtr, pattern)
Tcl_Obj *resultPtr = NULL;
/*
- * Call each of the "listMounts" functions in succession.
- * A non-NULL return value indicates the particular function has
- * succeeded. We call all the functions registered, since we want
- * a list from each filesystems.
+ * Call each of the "matchInDirectory" functions in succession, with
+ * the specific type information 'mountsOnly'. A non-NULL return
+ * value indicates the particular function has succeeded. We call
+ * all the functions registered, since we want a list from each
+ * filesystems.
*/
fsRecPtr = FsGetFirstFilesystem();