Package: dash Version: 0.5.7-3 Severity: grave Justification: causes non-serious data loss
When running an interactive command, dash doesn't ignore SIGINT and SIGQUIT. For instance, here's what I get with Emacs 24 (not a previous version, since previously, Emacs had its own progress group, so that the bug wasn't visible), by typing Ctrl-G Ctrl-X Ctrl-C in Emacs: $ bash -c "emacs -Q -nw; echo foo"; echo bar foo bar $ dash -c "emacs -Q -nw; echo foo"; echo bar $ echo $? 130 $ The main problem is that dash is generally used as /bin/sh, thus by the system() command (or equivalent). So, typing Ctrl-G in an Emacs running in a terminal has the effect to make the sh shell fail, without any possible workaround. This affects applications that run an editor such as Subversion (svn command) and Mutt. For instance, with svn: $ SVN_EDITOR=emacs svn ci svn: E200012: Commit failed (details follow): svn: E200012: system('emacs svn-commit.tmp') returned 2 svn: E200012: Your commit message was left in a temporary file: svn: E200012: '/home/vinc17/wd/db/svn-commit.tmp' zsh: interrupt SVN_EDITOR=emacs svnwrapper ci According to Andreas Schwab[*], this is a bug in dash. And indeed, the system(3) man page says: system() executes a command specified in command by calling /bin/sh -c command, and returns after the command has been completed. During execution of the command, SIGCHLD will be blocked, and SIGINT and SIGQUIT will be ignored. [*] http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11886#17 -- System Information: Debian Release: wheezy/sid APT prefers unstable APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 3.2.0-3-amd64 (SMP w/8 CPU cores) Locale: LANG=POSIX, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages dash depends on: ii debianutils 4.3.3 ii dpkg 1.16.8 ii libc6 2.13-35 dash recommends no packages. dash suggests no packages. -- debconf information: * dash/sh: true -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org