From: Bob Rossi <bob_rossi@cox.net>
To: Andreas Schwab <schwab@suse.de>
Cc: Jim Blandy <jimb@codesourcery.com>,
Alain Magloire <alain@qnx.com>,
gdb@sources.redhat.com
Subject: Re: invoking GDB from FE and signals
Date: Thu, 18 May 2006 23:25:00 -0000 [thread overview]
Message-ID: <20060518225104.GF21003@brasko.net> (raw)
In-Reply-To: <jebqtvovg2.fsf@sykes.suse.de>
On Thu, May 18, 2006 at 11:49:01PM +0200, Andreas Schwab wrote:
> Bob Rossi <bob_rossi@cox.net> writes:
>
> > I find in emacs:process.c code that they send the SIGINT in different
> > ways
> > /* If possible, send signals to the entire pgrp
> > by sending an input character to it. */
> >
> > /* TERMIOS is the latest and bestest, and seems most likely to
> > work. If the system has it, use it. */
> > case SIGINT:
> > sig_char = &t.c_cc[VINTR];
> > break;
> > ...
> > send_process (proc, sig_char, 1, Qnil);
>
> This part is only active if SIGNALS_VIA_CHARACTERS is defined. That is
> defined mostly for BSD-derived systems, but not, for example, for Linux.
> The fallback is to send the signal to the foreground process group of the
> terminal.
Thanks Andreas, I see now. The code is below on how to get the
foreground process group. I see that it get's the process group and then
calls killpg.
Is this the prefered way of sending a single to the inferior? I am only
now realizing how many different case's that emacs supports.
Thanks,
Bob Rossi
/* Return the foreground process group for the tty/pty that
the process P uses. */
static int
emacs_get_tty_pgrp (p)
struct Lisp_Process *p;
{
int gid = -1;
#ifdef TIOCGPGRP
if (ioctl (XINT (p->infd), TIOCGPGRP, &gid) == -1 && ! NILP (p->tty_name))
{
int fd;
/* Some OS:es (Solaris 8/9) does not allow TIOCGPGRP from the
master side. Try the slave side. */
fd = emacs_open (XSTRING (p->tty_name)->data, O_RDONLY, 0);
if (fd != -1)
{
ioctl (fd, TIOCGPGRP, &gid);
emacs_close (fd);
}
}
#endif /* defined (TIOCGPGRP ) */
return gid;
}
next prev parent reply other threads:[~2006-05-18 22:51 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-05-18 16:27 Alain Magloire
2006-05-18 16:55 ` Bob Rossi
2006-05-18 16:59 ` Andreas Schwab
[not found] ` <vt2bqtvl157.fsf@theseus.home.>
2006-05-18 17:44 ` Bob Rossi
2006-05-18 21:56 ` Jim Blandy
2006-05-19 1:19 ` Bob Rossi
2006-05-19 3:00 ` Daniel Jacobowitz
2006-05-19 12:49 ` Bob Rossi
2006-05-19 15:37 ` Daniel Jacobowitz
2006-05-19 15:56 ` Bob Rossi
2006-05-19 17:55 ` Jim Blandy
2006-05-19 19:22 ` Bob Rossi
2006-05-23 3:46 ` Jim Blandy
2006-05-18 22:51 ` Andreas Schwab
2006-05-18 23:25 ` Bob Rossi [this message]
2006-05-19 1:17 ` Andreas Schwab
2006-05-18 23:28 ` Jim Blandy
2006-05-19 0:59 ` Andreas Schwab
-- strict thread matches above, loose matches on Subject: below --
2006-05-13 15:09 Bob Rossi
2006-05-13 15:11 ` Daniel Jacobowitz
2006-05-13 15:19 ` Bob Rossi
2006-05-13 15:48 ` Daniel Jacobowitz
2006-05-13 15:49 ` Bob Rossi
2006-05-13 17:11 ` Daniel Jacobowitz
2006-05-14 3:25 ` Bob Rossi
2006-05-14 4:17 ` Nick Roberts
2006-05-14 4:18 ` Eli Zaretskii
2006-05-14 5:01 ` Daniel Jacobowitz
2006-05-15 6:55 ` Nick Roberts
2006-05-15 13:35 ` Daniel Jacobowitz
2006-05-15 13:39 ` Bob Rossi
2006-05-15 15:04 ` Daniel Jacobowitz
2006-05-15 19:04 ` Jim Blandy
2006-05-15 13:37 ` Jim Blandy
2006-05-15 14:58 ` Bob Rossi
2006-05-15 18:50 ` Jim Blandy
2006-05-15 20:09 ` Bob Rossi
2006-05-15 18:42 ` PAUL GILLIAM
2006-05-15 19:18 ` Bob Rossi
2006-05-15 19:43 ` Daniel Jacobowitz
2006-05-15 20:05 ` Bob Rossi
2006-05-15 20:09 ` Daniel Jacobowitz
2006-05-15 20:20 ` Bob Rossi
2006-05-15 21:02 ` Daniel Jacobowitz
2006-05-15 21:08 ` Bob Rossi
2006-05-15 21:31 ` Daniel Jacobowitz
2006-05-15 21:33 ` Bob Rossi
2006-05-15 20:11 ` PAUL GILLIAM
2006-05-15 20:33 ` Bob Rossi
2006-05-15 21:52 ` Joel Brobecker
2006-05-15 22:40 ` Bob Rossi
2006-05-16 3:32 ` Nick Roberts
2006-05-18 1:40 ` Bob Rossi
2006-05-18 12:32 ` Jim Blandy
2006-05-18 7:28 ` Bob Rossi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20060518225104.GF21003@brasko.net \
--to=bob_rossi@cox.net \
--cc=alain@qnx.com \
--cc=gdb@sources.redhat.com \
--cc=jimb@codesourcery.com \
--cc=schwab@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox