summaryrefslogtreecommitdiffstats
path: root/generic/tclStringObj.c
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2017-06-28 13:44:23 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2017-06-28 13:44:23 (GMT)
commitf5cec2b1ff8efe0e8ebd0c5f5b121ae0bf8055bb (patch)
tree6a4703fb4ee4538ab049c3c0f2165e5e0166e00f /generic/tclStringObj.c
parentcd8fa05e72bb9e525feb1e1a3409e18da78da5c5 (diff)
parent073ff3c5fe40eeac93ae5508b647a7019006f431 (diff)
downloadtcl-f5cec2b1ff8efe0e8ebd0c5f5b121ae0bf8055bb.zip
tcl-f5cec2b1ff8efe0e8ebd0c5f5b121ae0bf8055bb.tar.gz
tcl-f5cec2b1ff8efe0e8ebd0c5f5b121ae0bf8055bb.tar.bz2
merge core-8-6-branch
Diffstat (limited to 'generic/tclStringObj.c')
-rw-r--r--generic/tclStringObj.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/generic/tclStringObj.c b/generic/tclStringObj.c
index 37da311..2305220 100644
--- a/generic/tclStringObj.c
+++ b/generic/tclStringObj.c
@@ -2029,9 +2029,12 @@ Tcl_AppendFormatToObj(
segmentLimit -= 1;
precision--;
break;
+ case 'X':
+ Tcl_AppendToObj(segment, "0X", 2);
+ segmentLimit -= 2;
+ break;
case 'p':
case 'x':
- case 'X':
Tcl_AppendToObj(segment, "0x", 2);
segmentLimit -= 2;
break;
@@ -2200,7 +2203,11 @@ Tcl_AppendFormatToObj(
}
digitOffset = (int) (bits % base);
if (digitOffset > 9) {
- bytes[numDigits] = 'a' + digitOffset - 10;
+ if (ch == 'X') {
+ bytes[numDigits] = 'A' + digitOffset - 10;
+ } else {
+ bytes[numDigits] = 'a' + digitOffset - 10;
+ }
} else {
bytes[numDigits] = '0' + digitOffset;
}
@@ -2322,14 +2329,6 @@ Tcl_AppendFormatToObj(
goto error;
}
- switch (ch) {
- case 'E':
- case 'G':
- case 'X': {
- Tcl_SetObjLength(segment, Tcl_UtfToUpper(TclGetString(segment)));
- }
- }
-
if (width>0 && numChars<0) {
numChars = Tcl_GetCharLength(segment);
}