diff options
| author | dgp <dgp@users.sourceforge.net> | 2015-07-05 17:45:27 (GMT) |
|---|---|---|
| committer | dgp <dgp@users.sourceforge.net> | 2015-07-05 17:45:27 (GMT) |
| commit | 7e3e434235a27d0e8b697f2731cd42d8536ca349 (patch) | |
| tree | e6d5e1e88d9f159bec2d99661785bc7ac0623446 | |
| parent | 6295fccc15539041eb182654e7b73cea3fed2fef (diff) | |
| parent | 4ce2c3e6e7ca0a108a6b0a502f9349ce319e2c55 (diff) | |
| download | tcl-7e3e434235a27d0e8b697f2731cd42d8536ca349.zip tcl-7e3e434235a27d0e8b697f2731cd42d8536ca349.tar.gz tcl-7e3e434235a27d0e8b697f2731cd42d8536ca349.tar.bz2 | |
merge trunk
| -rw-r--r-- | generic/tclExecute.c | 1 | ||||
| -rw-r--r-- | generic/tclStrToD.c | 2 | ||||
| -rw-r--r-- | tests/execute.test | 9 |
3 files changed, 11 insertions, 1 deletions
diff --git a/generic/tclExecute.c b/generic/tclExecute.c index 3ba4694..a1591a7 100644 --- a/generic/tclExecute.c +++ b/generic/tclExecute.c @@ -9754,7 +9754,6 @@ TclGetSourceFromFrame( cfPtr->cmdObj = Tcl_NewStringObj(cfPtr->cmd, cfPtr->len); } else { cfPtr->cmdObj = Tcl_NewListObj(objc, objv); - cfPtr->cmd = Tcl_GetStringFromObj(cfPtr->cmdObj, &cfPtr->len); } Tcl_IncrRefCount(cfPtr->cmdObj); } diff --git a/generic/tclStrToD.c b/generic/tclStrToD.c index 6da1f04..14afc36 100644 --- a/generic/tclStrToD.c +++ b/generic/tclStrToD.c @@ -1852,6 +1852,8 @@ RefineApproximation( rteSignificand = frexp(approxResult, &rteExponent); rteSigWide = (Tcl_WideInt) ldexp(rteSignificand, FP_PRECISION); if ((rteSigWide & 1) == 0) { + mp_clear(&twoMd); + mp_clear(&twoMv); return approxResult; } } diff --git a/tests/execute.test b/tests/execute.test index d3c521c..6942413 100644 --- a/tests/execute.test +++ b/tests/execute.test @@ -1057,6 +1057,15 @@ test execute-11.2 {Bug 268b23df11} -setup { rename crash {} rename zero {} } -result 0 +test execute-11.3 {Bug a0ece9d6d4} -setup { + proc crash {} {expr {rand()}} + trace add execution crash enterstep {apply {args {info frame -2}}} +} -body { + string is double [crash] +} -cleanup { + trace remove execution crash enterstep {apply {args {info frame -2}}} + rename crash {} +} -result 1 # cleanup if {[info commands testobj] != {}} { |
