The behavior seems to have changed in later version. I tested dash
There EXIT trap is not run at all, if -e is used, and you use Ctrl-C. But if 
you remove the 'exit 2' from the signal trap, EXIT trap will be run regardless 
of -e setting, when you press Ctrl-C. That is not intuitive. So I think EXIT 
trap should be run even in case of -e. However, if you do not need custom exit 
status for the signal trap, you could just remove the exit builtin.

You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to dash in Ubuntu.

  set -e reverses order of signal handlers

Status in dash:
Status in dash package in Ubuntu:

Bug description:
  When `-e` is not specified, an INT signal handler runs before an EXIT
  signal handler; when -e is specified, the EXIT signal handler is run
  (but only one of its statements) and then the INT signal handler is

  :;  /bin/dash < ./ 
  ^Ctrapped: SIG_
  trapped: EXIT 2
  next part
  :;  /bin/dash -e < ./ 
  ^Ctrapped: EXIT 130
  trapped: SIG_

  With `bash --posix` or `busybox sh`, the order of signal handlers is
  the same no matter whether `-e` is specified or no. Please see the
  attached script, ``.

To manage notifications about this bug go to:

Mailing list:
Post to     :
Unsubscribe :
More help   :

Reply via email to