summaryrefslogtreecommitdiffstats
path: root/generic/tclStubInit.c
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2018-10-08 18:50:14 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2018-10-08 18:50:14 (GMT)
commitfe34611d8ec24bd6dd816cf00fa8ac15355bde79 (patch)
tree2e4539fae08460369a04d0322a1701140ce16474 /generic/tclStubInit.c
parenta51d80f377b33a38caf0a483b4b12bd494698f7f (diff)
parentee49fa81d90d8396e545d07c2f5a40a48130a9dc (diff)
downloadtcl-fe34611d8ec24bd6dd816cf00fa8ac15355bde79.zip
tcl-fe34611d8ec24bd6dd816cf00fa8ac15355bde79.tar.gz
tcl-fe34611d8ec24bd6dd816cf00fa8ac15355bde79.tar.bz2
Merge 8.7
Diffstat (limited to 'generic/tclStubInit.c')
-rw-r--r--generic/tclStubInit.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/generic/tclStubInit.c b/generic/tclStubInit.c
index 8e1ea44..a03bf1a 100644
--- a/generic/tclStubInit.c
+++ b/generic/tclStubInit.c
@@ -105,6 +105,9 @@ Tcl_WinUtfToTChar(
Tcl_DString *dsPtr)
{
Tcl_DStringInit(dsPtr);
+ if (!string) {
+ return NULL;
+ }
return (char *)Tcl_UtfToUniCharDString(string, len, dsPtr);
}
@@ -114,12 +117,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);
}