summaryrefslogtreecommitdiffstats
path: root/generic/tclParse.c
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2011-04-28 14:44:47 (GMT)
committerdgp <dgp@users.sourceforge.net>2011-04-28 14:44:47 (GMT)
commit7fa90bb19565f59f0c918cac88e2a34bf51cd0fa (patch)
treec826199d351b0c6f0746a66124227d102686a420 /generic/tclParse.c
parent319c5292645aa41b4f56539f615ba5314b27c957 (diff)
parent5702e695062ec36c3addd403d748af48164db8b1 (diff)
downloadtcl-7fa90bb19565f59f0c918cac88e2a34bf51cd0fa.zip
tcl-7fa90bb19565f59f0c918cac88e2a34bf51cd0fa.tar.gz
tcl-7fa90bb19565f59f0c918cac88e2a34bf51cd0fa.tar.bz2
New utility routines: TclIsSpaceProc() and TclCountSpaceRuns()
Use to replace calls to isspace() and their /* INTL */ risk.
Diffstat (limited to 'generic/tclParse.c')
-rw-r--r--generic/tclParse.c26
1 files changed, 25 insertions, 1 deletions
diff --git a/generic/tclParse.c b/generic/tclParse.c
index 9bfe608..429d33a 100644
--- a/generic/tclParse.c
+++ b/generic/tclParse.c
@@ -611,6 +611,30 @@ Tcl_ParseCommand(
/*
*----------------------------------------------------------------------
*
+ * TclIsSpaceProc --
+ *
+ * Report whether byte is in the set of whitespace characters used by
+ * Tcl to separate words in scripts or elements in lists.
+ *
+ * Results:
+ * Returns 1, if byte is in the set, 0 otherwise.
+ *
+ * Side effects:
+ * None.
+ *
+ *----------------------------------------------------------------------
+ */
+
+int
+TclIsSpaceProc(
+ char byte)
+{
+ return CHAR_TYPE(byte) & (TYPE_SPACE) || byte == '\n';
+}
+
+/*
+ *----------------------------------------------------------------------
+ *
* ParseWhiteSpace --
*
* Scans up to numBytes bytes starting at src, consuming white space
@@ -1757,7 +1781,7 @@ Tcl_ParseBraces(
openBrace = 0;
break;
case '#' :
- if (openBrace && isspace(UCHAR(src[-1]))) {
+ if (openBrace && TclIsSpaceProc(src[-1])) {
Tcl_AppendResult(parsePtr->interp,
": possible unbalanced brace in comment", NULL);
goto error;