summaryrefslogtreecommitdiffstats
path: root/win
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2012-07-16 08:33:13 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2012-07-16 08:33:13 (GMT)
commitda19d0dd6c320026b45f407302a2d0f55d67777f (patch)
tree19ecb9097ee39ac7b4dd159873af1be0a2802f4f /win
parentadecc7a1e1a45aab0805e6cb440eb3adf09e486a (diff)
parent5dff38707576522b97793ce6ad8024b0f92895bb (diff)
downloadtcl-da19d0dd6c320026b45f407302a2d0f55d67777f.zip
tcl-da19d0dd6c320026b45f407302a2d0f55d67777f.tar.gz
tcl-da19d0dd6c320026b45f407302a2d0f55d67777f.tar.bz2
merge trunk
Diffstat (limited to 'win')
-rw-r--r--win/tclWinReg.c2
-rw-r--r--win/tclWinSock.c10
2 files changed, 4 insertions, 8 deletions
diff --git a/win/tclWinReg.c b/win/tclWinReg.c
index 565188c..d2f233e 100644
--- a/win/tclWinReg.c
+++ b/win/tclWinReg.c
@@ -780,7 +780,7 @@ GetValue(
* HKEY_PERFORMANCE_DATA
*/
- length *= 2;
+ length = Tcl_DStringLength(&data) * (2 / sizeof(TCHAR));
Tcl_DStringSetLength(&data, (int) length * sizeof(TCHAR));
result = RegQueryValueEx(key, nativeValue,
NULL, &type, (BYTE *) Tcl_DStringValue(&data), &length);
diff --git a/win/tclWinSock.c b/win/tclWinSock.c
index 9b181a6..97b10a3 100644
--- a/win/tclWinSock.c
+++ b/win/tclWinSock.c
@@ -2579,20 +2579,16 @@ InitializeHostName(
Tcl_DStringInit(&ds);
if (TclpHasSockets(NULL) == TCL_OK) {
/*
- * Buffer length of 255 copied slavishly from previous version of
- * this routine. Presumably there's a more "correct" macro value
- * for a properly sized buffer for a gethostname() call.
- * Maintainers are welcome to supply it.
+ * The buffer size of 256 is recommended by the MSDN page that
+ * documents gethostname() as being always adequate.
*/
Tcl_DString inDs;
Tcl_DStringInit(&inDs);
- Tcl_DStringSetLength(&inDs, 255);
+ Tcl_DStringSetLength(&inDs, 256);
if (gethostname(Tcl_DStringValue(&inDs),
Tcl_DStringLength(&inDs)) == 0) {
- TclDStringClear(&ds);
- } else {
Tcl_ExternalToUtfDString(NULL, Tcl_DStringValue(&inDs), -1,
&ds);
}