summaryrefslogtreecommitdiffstats
path: root/win/tclWin32Dll.c
diff options
context:
space:
mode:
Diffstat (limited to 'win/tclWin32Dll.c')
-rw-r--r--win/tclWin32Dll.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/win/tclWin32Dll.c b/win/tclWin32Dll.c
index 1a33514..04d27dd 100644
--- a/win/tclWin32Dll.c
+++ b/win/tclWin32Dll.c
@@ -472,6 +472,9 @@ Tcl_WinUtfToTChar(
* converted string is stored. */
{
Tcl_DStringInit(dsPtr);
+ if (!string) {
+ return (TCHAR *)Tcl_DStringValue(dsPtr);
+ }
return Tcl_UtfToUniCharDString(string, len, dsPtr);
}
@@ -483,12 +486,15 @@ Tcl_WinTCharToUtf(
Tcl_DString *dsPtr) /* Uninitialized or free DString in which the
* converted string is stored. */
{
+ Tcl_DStringInit(dsPtr);
+ if (!string) {
+ return Tcl_DStringValue(dsPtr);
+ }
if (len > 0) {
len /= 2;
} else if (len < 0) {
len = wcslen(string);
}
- Tcl_DStringInit(dsPtr);
return Tcl_UniCharToUtfDString(string, len, dsPtr);
}