From 5717e880e963ee03f2a8fe2f1732b295331b0b22 Mon Sep 17 00:00:00 2001 From: dkf Date: Tue, 13 Nov 2007 14:59:38 +0000 Subject: Forgot to transform to native encoding for getaddrinfo() --- unix/tclUnixChan.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/unix/tclUnixChan.c b/unix/tclUnixChan.c index 6949f8b..3b8098c 100644 --- a/unix/tclUnixChan.c +++ b/unix/tclUnixChan.c @@ -10,7 +10,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclUnixChan.c,v 1.85 2007/11/13 14:52:49 das Exp $ + * RCS: @(#) $Id: tclUnixChan.c,v 1.86 2007/11/13 14:59:38 dkf Exp $ */ #include "tclInt.h" /* Internal definitions for Tcl. */ @@ -2646,6 +2646,7 @@ CreateSocketAddress( { #ifdef HAVE_GETADDRINFO struct addrinfo hints, *resPtr = NULL; + Tcl_DString ds; int result; if (host == NULL) { @@ -2668,7 +2669,9 @@ CreateSocketAddress( * that right, it shouldn't use this part of the code. */ - result = getaddrinfo(host, NULL, &hints, &resPtr); + native = Tcl_UtfToExternalDString(NULL, host, -1, &ds); + result = getaddrinfo(Tcl_DStringValue(&ds), NULL, &hints, &resPtr); + Tcl_DStringFree(&ds); if (result == 0) { memcpy(sockaddrPtr, resPtr->ai_addr, sizeof(struct sockaddr_in)); freeaddrinfo(resPtr); -- cgit v0.12