From 991a1da14806eefd1c6fc8fc1c0c3d2b90af6f24 Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Sun, 10 Feb 2008 19:02:53 +0000 Subject: ash: fix "orwell bug" 1984. Testcase: trap_handler() { echo trap } trap trap_handler USR1 sleep 3600 & while true; do wait; done --- shell/ash_doc.txt | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 shell/ash_doc.txt (limited to 'shell/ash_doc.txt') diff --git a/shell/ash_doc.txt b/shell/ash_doc.txt new file mode 100644 index 000000000..28c574841 --- /dev/null +++ b/shell/ash_doc.txt @@ -0,0 +1,31 @@ + Wait + signals + +We had some bugs here which are hard to test in testsuite. + +Bug 1280 (http://busybox.net/bugs/view.php?id=1280): +was misbehaving in interactive ash. Correct behavior: + +$ sleep 20 & +$ wait +^C +$ wait +^C +$ wait +^C +... + +Bug 1984 (http://busybox.net/bugs/view.php?id=1984): +traps were not triggering: + +trap_handler_usr () { + echo trap usr +} +trap_handler_int () { + echo trap int +} +trap trap_handler_usr USR1 +trap trap_handler_int INT +sleep 3600 & +echo "Please do: kill -USR1 $$" +echo "or: kill -INT $$" +while true; do wait; echo wait interrupted; done -- cgit v1.2.3