summaryrefslogtreecommitdiffstats
path: root/generic
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2017-10-23 17:06:57 (GMT)
committerdgp <dgp@users.sourceforge.net>2017-10-23 17:06:57 (GMT)
commit45d0977a5ca8ae0ead48b66feeb51c65d1ce45b4 (patch)
tree7d599f7fddeaeb2287d18e824f3250b8dbad5b8a /generic
parente9b584f81b87c299c819443f22bc5a81b20fff38 (diff)
downloadtcl-45d0977a5ca8ae0ead48b66feeb51c65d1ce45b4.zip
tcl-45d0977a5ca8ae0ead48b66feeb51c65d1ce45b4.tar.gz
tcl-45d0977a5ca8ae0ead48b66feeb51c65d1ce45b4.tar.bz2
Implementation branch for TIP 345: Kill the "identity" encoding.
This checkin, completely does that. Bad news is it causes huge failures. We're still making a lot of use of this encoding, and cannot complete this TIP until the branch is repaired.
Diffstat (limited to 'generic')
-rw-r--r--generic/tclEncoding.c77
1 files changed, 0 insertions, 77 deletions
diff --git a/generic/tclEncoding.c b/generic/tclEncoding.c
index e328340..37d5fb6 100644
--- a/generic/tclEncoding.c
+++ b/generic/tclEncoding.c
@@ -195,11 +195,6 @@ static unsigned short emptyPage[256];
* Functions used only in this module.
*/
-static int BinaryProc(ClientData clientData,
- const char *src, int srcLen, int flags,
- Tcl_EncodingState *statePtr, char *dst, int dstLen,
- int *srcReadPtr, int *dstWrotePtr,
- int *dstCharsPtr);
static void DupEncodingIntRep(Tcl_Obj *srcPtr, Tcl_Obj *dupPtr);
static void EscapeFreeProc(ClientData clientData);
static int EscapeFromUtfProc(ClientData clientData,
@@ -563,14 +558,6 @@ TclInitEncodingSubsystem(void)
* formed UTF-8 into a properly formed stream.
*/
- type.encodingName = "identity";
- type.toUtfProc = BinaryProc;
- type.fromUtfProc = BinaryProc;
- type.freeProc = NULL;
- type.nullSize = 1;
- type.clientData = NULL;
- tclIdentityEncoding = Tcl_CreateEncoding(&type);
-
type.encodingName = "utf-8";
type.toUtfProc = UtfExtToUtfIntProc;
type.fromUtfProc = UtfIntToUtfExtProc;
@@ -2083,70 +2070,6 @@ LoadEscapeEncoding(
/*
*-------------------------------------------------------------------------
*
- * BinaryProc --
- *
- * The default conversion when no other conversion is specified. No
- * translation is done; source bytes are copied directly to destination
- * bytes.
- *
- * Results:
- * Returns TCL_OK if conversion was successful.
- *
- * Side effects:
- * None.
- *
- *-------------------------------------------------------------------------
- */
-
-static int
-BinaryProc(
- ClientData clientData, /* Not used. */
- const char *src, /* Source string (unknown encoding). */
- int srcLen, /* Source string length in bytes. */
- int flags, /* Conversion control flags. */
- Tcl_EncodingState *statePtr,/* Place for conversion routine to store state
- * information used during a piecewise
- * conversion. Contents of statePtr are
- * initialized and/or reset by conversion
- * routine under control of flags argument. */
- char *dst, /* Output buffer in which converted string is
- * stored. */
- int dstLen, /* The maximum length of output buffer in
- * bytes. */
- int *srcReadPtr, /* Filled with the number of bytes from the
- * source string that were converted. */
- int *dstWrotePtr, /* Filled with the number of bytes that were
- * stored in the output buffer as a result of
- * the conversion. */
- int *dstCharsPtr) /* Filled with the number of characters that
- * correspond to the bytes stored in the
- * output buffer. */
-{
- int result;
-
- result = TCL_OK;
- dstLen -= TCL_UTF_MAX - 1;
- if (dstLen < 0) {
- dstLen = 0;
- }
- if ((flags & TCL_ENCODING_CHAR_LIMIT) && srcLen > *dstCharsPtr) {
- srcLen = *dstCharsPtr;
- }
- if (srcLen > dstLen) {
- srcLen = dstLen;
- result = TCL_CONVERT_NOSPACE;
- }
-
- *srcReadPtr = srcLen;
- *dstWrotePtr = srcLen;
- *dstCharsPtr = srcLen;
- memcpy(dst, src, (size_t) srcLen);
- return result;
-}
-
-/*
- *-------------------------------------------------------------------------
- *
* UtfExtToUtfIntProc --
*
* Convert from UTF-8 to UTF-8. While converting null-bytes from the