From dd854175d4c77b6a65cd86542210289bd47bb4c0 Mon Sep 17 00:00:00 2001 From: dgp Date: Thu, 29 Apr 2004 20:40:11 +0000 Subject: * tests/execute.test (execute-8.2): Avoid crashes when there is limited system stack space (threads-enabled). --- ChangeLog | 5 +++++ tests/execute.test | 13 +++++++++---- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 1d7dd94..87e947a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2004-04-29 Don Porter + + * tests/execute.test (execute-8.2): Avoid crashes when there + is limited system stack space (threads-enabled). + 2004-04-28 Miguel Sofer * doc/global.n: diff --git a/tests/execute.test b/tests/execute.test index 597832e..701616c 100644 --- a/tests/execute.test +++ b/tests/execute.test @@ -14,7 +14,7 @@ # See the file "license.terms" for information on usage and redistribution # of this file, and for a DISCLAIMER OF ALL WARRANTIES. # -# RCS: @(#) $Id: execute.test,v 1.16 2003/11/14 20:44:46 dgp Exp $ +# RCS: @(#) $Id: execute.test,v 1.17 2004/04/29 20:40:14 dgp Exp $ if {[lsearch [namespace children] ::tcltest] == -1} { package require tcltest 2 @@ -721,14 +721,19 @@ test execute-8.1 {Stack protection} { catch {expr {1+9/0}} } 1 -test execute-8.2 {Stack restoration} { +test execute-8.2 {Stack restoration} -body { # Test for [Bug #816641], correct restoration # of the stack top after the stack is grown proc f {args} { f bee bop } catch f msg set msg - } {too many nested evaluations (infinite loop?)} - + } -setup { + # Avoid crashes when system stack size is limited (thread-enabled!) + set limit [interp recursionlimit {}] + interp recursionlimit {} 100 + } -cleanup { + interp recursionlimit {} $limit + } -result {too many nested evaluations (infinite loop?)} # cleanup if {[info commands testobj] != {}} { -- cgit v0.12