mirror of
https://git.yoctoproject.org/poky
synced 2026-04-30 12:32:12 +02:00
I'd be happy to remove expect from core as it has been unmaintained for years, but sadly gcc/binutils test suites are basically written in it (via dejagnu), and ltp makes use of it as well. I attempted porting expect to tcl 9, but it's a tcl extension and makes extensive use of features that have been deprecated in tcl 8 and removed in tcl 9, and even pokes into tcl internals. At some point hopefully the GNU toolchain upstreams are going to notice; for now we'll carry tcl (latest) and tcl8 recipes. tcl and tcl8 packages can be co-installed, the latter is adjusted to contain tclsh8. tcl-dev and tcl8-dev packages can also be co-installed, a few files in tcl8-dev are renamed to avoid clashes with tcl-dev (tcl.pc -> tcl8.pc, and similar for tclConfig.sh and tclooConfig.sh). (From OE-Core rev: 8ec7bfc6644aff011545dfb0f5a415e79d7b0844) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
41 lines
1.2 KiB
Diff
41 lines
1.2 KiB
Diff
From 426aa2ff62dda77fd011e8f630b9d4ea17984817 Mon Sep 17 00:00:00 2001
|
|
From: Ross Burton <ross.burton@arm.com>
|
|
Date: Mon, 12 Jul 2021 14:50:13 +0100
|
|
Subject: [PATCH] tcl: fix race in interp.test
|
|
|
|
The interp-36.7 patch has race conditions and is missing cleanup. This patch by
|
|
a Tcl maintainer should improve matters.
|
|
|
|
Upstream-Status: Pending
|
|
Signed-off-by: Ross Burton <ross.burton@arm.com>
|
|
---
|
|
tests/interp.test | 7 ++++---
|
|
1 file changed, 4 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/tests/interp.test b/tests/interp.test
|
|
index d742484..fc90990 100644
|
|
--- a/tests/interp.test
|
|
+++ b/tests/interp.test
|
|
@@ -3595,17 +3595,18 @@ test interp-36.7 {ChildBgerror sets error handler of child [1999035]} -setup {
|
|
variable result
|
|
set result [lindex $args 0]
|
|
}
|
|
+ set tout [after 5000 {set result timeout}]
|
|
} -body {
|
|
child eval {
|
|
variable done {}
|
|
after 0 error foo
|
|
- after 10 [list ::set [namespace which -variable done] {}]
|
|
- vwait [namespace which -variable done]
|
|
}
|
|
+ vwait result
|
|
set result
|
|
} -cleanup {
|
|
+ after cancel $tout
|
|
variable result {}
|
|
- unset -nocomplain result
|
|
+ unset -nocomplain result tout
|
|
interp delete child
|
|
} -result foo
|
|
|