summaryrefslogtreecommitdiffstats
path: root/generic
diff options
context:
space:
mode:
Diffstat (limited to 'generic')
-rw-r--r--generic/tclEncoding.c2
-rw-r--r--generic/tclStubInit.c14
-rw-r--r--generic/tclUtf.c8
-rw-r--r--generic/tclUtil.c2
-rw-r--r--generic/tclZipfs.c10
5 files changed, 17 insertions, 19 deletions
diff --git a/generic/tclEncoding.c b/generic/tclEncoding.c
index f6744e9..d5e8c9a 100644
--- a/generic/tclEncoding.c
+++ b/generic/tclEncoding.c
@@ -2058,7 +2058,7 @@ LoadEscapeEncoding(
dataPtr->numSubTables =
Tcl_DStringLength(&escapeData) / sizeof(EscapeSubTable);
memcpy(dataPtr->subTables, Tcl_DStringValue(&escapeData),
- (size_t) Tcl_DStringLength(&escapeData));
+ Tcl_DStringLength(&escapeData));
Tcl_DStringFree(&escapeData);
memset(dataPtr->prefixBytes, 0, sizeof(dataPtr->prefixBytes));
diff --git a/generic/tclStubInit.c b/generic/tclStubInit.c
index 2e2aa60..9a134f9 100644
--- a/generic/tclStubInit.c
+++ b/generic/tclStubInit.c
@@ -230,6 +230,9 @@ Tcl_WinUtfToTChar(
Tcl_DString *dsPtr)
{
Tcl_DStringInit(dsPtr);
+ if (!string) {
+ return NULL;
+ }
return (char *)Tcl_UtfToUniCharDString(string, len, dsPtr);
}
@@ -239,12 +242,15 @@ Tcl_WinTCharToUtf(
int len,
Tcl_DString *dsPtr)
{
- if (len > 0) {
- len /= 2;
- } else if (len == -1) {
+ Tcl_DStringInit(dsPtr);
+ if (!string) {
+ return NULL;
+ }
+ if (len < 0) {
len = wcslen((wchar_t *)string);
+ } else {
+ len /= 2;
}
- Tcl_DStringInit(dsPtr);
return Tcl_UniCharToUtfDString((Tcl_UniChar *)string, len, dsPtr);
}
diff --git a/generic/tclUtf.c b/generic/tclUtf.c
index d62586c..ce67db7 100644
--- a/generic/tclUtf.c
+++ b/generic/tclUtf.c
@@ -451,9 +451,9 @@ Tcl_UtfToUniCharDString(
if (Tcl_UtfCharComplete(p, end-p)) {
p += TclUtfToUniChar(p, &ch);
} else if ((unsigned)((UCHAR(*p)-0x80)) < (unsigned) 0x20) {
- ch = (Tcl_UniChar) cp1252[UCHAR(*p)-0x80];
+ ch = (Tcl_UniChar) cp1252[UCHAR(*p++)-0x80];
} else {
- ch = UCHAR(*p);
+ ch = UCHAR(*p++);
}
*w++ = ch;
}
@@ -783,8 +783,8 @@ Tcl_UniCharAtIndex(
*
* Returns a pointer to the specified character (not byte) position in
* the UTF-8 string. If TCL_UTF_MAX <= 4, characters > U+FFFF count as
- * 2 positions, but then the pointer should never be placed between
- * the two positions.
+ * 2 positions, but then the pointer should never be placed between
+ * the two positions.
*
* Results:
* As above.
diff --git a/generic/tclUtil.c b/generic/tclUtil.c
index 48602c4..c488a42 100644
--- a/generic/tclUtil.c
+++ b/generic/tclUtil.c
@@ -4316,7 +4316,7 @@ TclGetProcessGlobalValue(
ckfree(pgvPtr->value);
pgvPtr->value = ckalloc(Tcl_DStringLength(&newValue) + 1);
memcpy(pgvPtr->value, Tcl_DStringValue(&newValue),
- (size_t) Tcl_DStringLength(&newValue) + 1);
+ Tcl_DStringLength(&newValue) + 1);
Tcl_DStringFree(&newValue);
Tcl_FreeEncoding(pgvPtr->encoding);
pgvPtr->encoding = current;
diff --git a/generic/tclZipfs.c b/generic/tclZipfs.c
index ff04971..829b5d2 100644
--- a/generic/tclZipfs.c
+++ b/generic/tclZipfs.c
@@ -19,17 +19,9 @@
#include "tclInt.h"
#include "tclFileSystem.h"
-#ifdef _WIN32
-#include <winbase.h>
-#else /* !_WIN32 */
+#ifndef _WIN32
#include <sys/mman.h>
#endif /* _WIN32*/
-#include <errno.h>
-#include <string.h>
-#include <sys/stat.h>
-#include <time.h>
-#include <stdlib.h>
-#include <fcntl.h>
#ifndef MAP_FILE
#define MAP_FILE 0