[24434] trunk/base/src/pextlib1.0
source_changes at macosforge.org
source_changes at macosforge.org
Tue Apr 24 02:54:38 PDT 2007
Revision: 24434
http://trac.macosforge.org/projects/macports/changeset/24434
Author: eridius at macports.org
Date: 2007-04-24 02:54:38 -0700 (Tue, 24 Apr 2007)
Log Message:
-----------
Add handling of -- meta-flag to fs-traverse
Modified Paths:
--------------
trunk/base/src/pextlib1.0/fs-traverse.c
trunk/base/src/pextlib1.0/tests/fs-traverse.tcl
Modified: trunk/base/src/pextlib1.0/fs-traverse.c
===================================================================
--- trunk/base/src/pextlib1.0/fs-traverse.c 2007-04-24 09:49:17 UTC (rev 24433)
+++ trunk/base/src/pextlib1.0/fs-traverse.c 2007-04-24 09:54:38 UTC (rev 24434)
@@ -63,7 +63,7 @@
#define F_DEPTH 0x1
#define F_IGNORE_ERRORS 0x2
-/* fs-traverse ?-depth? ?-ignoreErrors? varname target-list body */
+/* fs-traverse ?-depth? ?-ignoreErrors? ?--? varname target-list body */
int
FsTraverseCmd(ClientData clientData UNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
{
@@ -76,27 +76,32 @@
int lobjc;
Tcl_Obj **lobjv;
- /* Adjust arguments to remove initial `find' */
+ /* Adjust arguments to remove command name */
++objv, --objc;
/* Parse flags */
while (objc) {
- if (!strcmp(Tcl_GetString(*objv), "-depth")) {
+ char *arg = Tcl_GetString(*objv);
+ if (!strcmp(arg, "-depth")) {
flags |= F_DEPTH;
++objv, --objc;
continue;
}
- if (!strcmp(Tcl_GetString(*objv), "-ignoreErrors")) {
+ if (!strcmp(arg, "-ignoreErrors")) {
flags |= F_IGNORE_ERRORS;
++objv, --objc;
continue;
}
+ if (!strcmp(arg, "--")) {
+ ++objv, --objc;
+ break;
+ }
break;
}
/* Parse remaining args */
if (objc != 3) {
- Tcl_WrongNumArgs(interp, 1, objv_orig, "?-depth? ?-ignoreErrors? varname target-list body");
+ Tcl_WrongNumArgs(interp, 1, objv_orig, "?-depth? ?-ignoreErrors? ?--? varname target-list body");
return TCL_ERROR;
}
Modified: trunk/base/src/pextlib1.0/tests/fs-traverse.tcl
===================================================================
--- trunk/base/src/pextlib1.0/tests/fs-traverse.tcl 2007-04-24 09:49:17 UTC (rev 24433)
+++ trunk/base/src/pextlib1.0/tests/fs-traverse.tcl 2007-04-24 09:54:38 UTC (rev 24434)
@@ -121,6 +121,13 @@
error "fs-traverse did not error with malformed target list using -ignoreErrors"
}
+ # Test wacky variable name called -depth
+ set output [list]
+ fs-traverse -- -depth $root {
+ lappend output ${-depth}
+ }
+ check_output $output $trees(1)
+
# NOTE: This should be the last test performed, as it modifies the file tree
# Test to make sure deleting files during traversal works as expected
set output [list]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-changes/attachments/20070424/104f87a0/attachment.html
More information about the macports-changes
mailing list