summaryrefslogtreecommitdiffstats
path: root/tests/http.test
diff options
context:
space:
mode:
authoroehhar <harald.oehlmann@elmicron.de>2022-10-28 15:03:05 (GMT)
committeroehhar <harald.oehlmann@elmicron.de>2022-10-28 15:03:05 (GMT)
commit98005a91dcde7aec64750bcaa58c2ecd8634256d (patch)
tree25ab8a52fef552bb7be1290806171a34f557e80e /tests/http.test
parent9d428d86eb4c38c8a0d3c8e56ead50c81a1c9d77 (diff)
parenta333cf0f8e86a36b3c58dbff9936baffd90ac68b (diff)
downloadtcl-98005a91dcde7aec64750bcaa58c2ecd8634256d.zip
tcl-98005a91dcde7aec64750bcaa58c2ecd8634256d.tar.gz
tcl-98005a91dcde7aec64750bcaa58c2ecd8634256d.tar.bz2
Merge core-8-branch
Diffstat (limited to 'tests/http.test')
-rw-r--r--tests/http.test7
1 files changed, 5 insertions, 2 deletions
diff --git a/tests/http.test b/tests/http.test
index 9986a77..81a810c 100644
--- a/tests/http.test
+++ b/tests/http.test
@@ -46,6 +46,7 @@ if {![file exists $httpdFile]} {
catch {package require Thread 2.7-}
if {[catch {package present Thread}] == 0 && [file exists $httpdFile]} {
set httpthread [thread::create -preserved]
+ lappend threadStack [list thread::release $httpthread]
thread::send $httpthread [list source $httpdFile]
thread::send $httpthread [list set bindata $bindata]
thread::send $httpthread {httpd_init 0; set port} port
@@ -63,6 +64,7 @@ if {[catch {package present Thread}] == 0 && [file exists $httpdFile]} {
catch {unset port}
return
}
+ set threadStack {}
}
if {![info exists ThreadLevel]} {
@@ -77,6 +79,7 @@ if {![info exists ThreadLevel]} {
foreach ThreadLevel $ValueRange {
source [info script]
}
+ eval [lpop threadStack]
catch {unset ThreadLevel}
catch {unset ValueRange}
return
@@ -1167,8 +1170,8 @@ catch {unset url}
catch {unset badurl}
catch {unset port}
catch {unset data}
-if {[info exists httpthread]} {
- thread::release $httpthread
+if {[llength $threadStack]} {
+ eval [lpop threadStack]
} else {
close $listen
}