From 93b5865bd7cf7a93bd9c8aa6719edba1101992f2 Mon Sep 17 00:00:00 2001 From: gahr Date: Tue, 27 Sep 2016 20:06:49 +0000 Subject: [4d5ae7d88a] Restore default-to-error logic in TcpConnect --- unix/tclUnixSock.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/unix/tclUnixSock.c b/unix/tclUnixSock.c index 8167077..3942df8 100644 --- a/unix/tclUnixSock.c +++ b/unix/tclUnixSock.c @@ -1098,7 +1098,7 @@ TcpConnect( { socklen_t optlen; int async_callback = statePtr->flags & TCP_ASYNC_PENDING; - int ret = -1, error = errno; + int ret = -1, error = EHOSTUNREACH; int async = statePtr->flags & TCP_ASYNC_CONNECT; if (async_callback) { -- cgit v0.12 From a9141cc7056ed9c6778e8fcfb770fcdef7cae3a6 Mon Sep 17 00:00:00 2001 From: "jan.nijtmans" Date: Mon, 3 Oct 2016 14:53:32 +0000 Subject: (cherry-pick): Fix [2bf561854c55a], interp alias to command whose name is the empty string. --- generic/tclInterp.c | 11 +++-------- tests/interp.test | 11 +++++++++++ 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/generic/tclInterp.c b/generic/tclInterp.c index 66ce1e0..8a0d653 100644 --- a/generic/tclInterp.c +++ b/generic/tclInterp.c @@ -660,14 +660,9 @@ NRInterpCmd( if (masterInterp == NULL) { return TCL_ERROR; } - if (TclGetString(objv[5])[0] == '\0') { - if (objc == 6) { - return AliasDelete(interp, slaveInterp, objv[3]); - } - } else { - return AliasCreate(interp, slaveInterp, masterInterp, objv[3], - objv[5], objc - 6, objv + 6); - } + + return AliasCreate(interp, slaveInterp, masterInterp, objv[3], + objv[5], objc - 6, objv + 6); } goto aliasArgs; } diff --git a/tests/interp.test b/tests/interp.test index f9c1aec..6000ffd 100644 --- a/tests/interp.test +++ b/tests/interp.test @@ -606,6 +606,17 @@ test interp-14.10 {testing interp-alias: error messages} -setup { invoked from within "a 1"} +test interp-14.11 {{interp alias} {target named the empty string} {bug 2bf56185}} -setup { + set interp [interp create [info cmdcount]] + interp eval $interp { + proc {} args {return $args} + } + +} -body { + interp alias {} p1 $interp {} + p1 one two three +} -result {one two three} + # part 15: testing file sharing test interp-15.1 {testing file sharing} { catch {interp delete z} -- cgit v0.12 From fb0c1827eb055322b7c6f0c5dc80673dbbbf1f9f Mon Sep 17 00:00:00 2001 From: dkf Date: Tue, 4 Oct 2016 19:11:07 +0000 Subject: [4d5ae7d88a] Stop crashes with asynchronous connects to hosts without addresses. --- unix/tclUnixSock.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/unix/tclUnixSock.c b/unix/tclUnixSock.c index 9c5cd4b..ca8d677 100644 --- a/unix/tclUnixSock.c +++ b/unix/tclUnixSock.c @@ -1098,7 +1098,7 @@ TcpConnect( { socklen_t optlen; int async_callback = statePtr->flags & TCP_ASYNC_PENDING; - int ret = -1, error = errno; + int ret = -1, error = EHOSTUNREACH; int async = statePtr->flags & TCP_ASYNC_CONNECT; if (async_callback) { -- cgit v0.12