severity 683671 serious
# not Debian-specific
tags 683671 + upstream moreinfo
quit

Hi Vincent,

Vincent Lefevre wrote:

> Severity: grave
> Justification: causes non-serious data loss

Can you explain that more precisely?  At first glance it seems like an
ordinary important bug.

[...]
> [*] http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11886#17

Thanks for the pointer.

http://unix.org/2008edition/ tells me:

  When a command is in an asynchronous list, it shall inherit from the
  shell a signal action of ignored (SIG_IGN) for the SIGQUIT and
  SIGINT signals, and may inherit a signal mask in which SIGQUIT and
  SIGINT are blocked. Otherwise, the signal actions and signal mask
  inherited by the command shall be the same as those inherited by the
  shell from its parent unless a signal action is modified by the trap
  special built-in (see trap )

In 'sh -c "emacs -nw"', the emacs command is not in an asynchronous
list, so I would suspect that emacs is supposed to inherit the same
signal actions as the shell inherited.

How about this patch (which at least gets rid of a mysterious code
artifact)?

Curious,
Jonathan

diff --git a/src/trap.c b/src/trap.c
index 17316c9..1fa835b 100644
--- a/src/trap.c
+++ b/src/trap.c
@@ -347,7 +347,7 @@ setinteractive(int on)
 {
        static int is_interactive;
 
-       if (++on == is_interactive)
+       if (on == is_interactive)
                return;
        is_interactive = on;
        setsignal(SIGINT);


-- 
To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to