summaryrefslogtreecommitdiffstats
path: root/tests/execute.test
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2004-04-29 20:40:11 (GMT)
committerdgp <dgp@users.sourceforge.net>2004-04-29 20:40:11 (GMT)
commitdd854175d4c77b6a65cd86542210289bd47bb4c0 (patch)
treeb420510df7ee198409971d4d591dea0b71080e73 /tests/execute.test
parent74c3e73d8d217092ccc418bd990bf43f9d8890ce (diff)
downloadtcl-dd854175d4c77b6a65cd86542210289bd47bb4c0.zip
tcl-dd854175d4c77b6a65cd86542210289bd47bb4c0.tar.gz
tcl-dd854175d4c77b6a65cd86542210289bd47bb4c0.tar.bz2
* tests/execute.test (execute-8.2): Avoid crashes when there
is limited system stack space (threads-enabled).
Diffstat (limited to 'tests/execute.test')
-rw-r--r--tests/execute.test13
1 files changed, 9 insertions, 4 deletions
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] != {}} {