From: Richard Stallman <rms@gnu.org>
Cc: stef.van-vlierberghe@eurocontrol.int,
philippe.waroquiers@eurocontrol.int, twurgler@goodyear.com,
emacs-devel@gnu.org
Subject: Re: [rms@gnu.org: Re: [twurgler@goodyear.com: emacs-21.2.90 on HP 11.0]]
Date: Tue, 16 Jul 2002 07:29:00 -0600 (MDT) [thread overview]
Message-ID: <200207161329.g6GDT0v21992@aztec.santafe.edu> (raw)
In-Reply-To: 5983E4DAC939D311B2F20008C7E62E7A075D2371@clsh01xch.office.cfmu.eurocontrol.be
If you make this change, and also add
#define USG_SUBTTY_WORKS
in hpux11.h, does everything work right?
*** process.c.~1.376.~ Mon Jul 15 05:45:00 2002
--- process.c Mon Jul 15 14:42:52 2002
***************
*** 1562,1570 ****
if (inchannel >= 0)
{
! #ifndef USG
! /* On USG systems it does not work to open the pty's tty here
! and then close and reopen it in the child. */
#ifdef O_NOCTTY
/* Don't let this terminal become our controlling terminal
(in case we don't have one). */
--- 1562,1570 ----
if (inchannel >= 0)
{
! #if ! defined (USG) || defined (USG_SUBTTY_WORKS)
! /* On most USG systems it does not work to open the pty's tty here,
! then close it and reopen it in the child. */
#ifdef O_NOCTTY
/* Don't let this terminal become our controlling terminal
(in case we don't have one). */
***************
*** 1576,1582 ****
report_file_error ("Opening pty", Qnil);
#else
forkin = forkout = -1;
! #endif /* not USG */
pty_flag = 1;
}
else
--- 1576,1582 ----
report_file_error ("Opening pty", Qnil);
#else
forkin = forkout = -1;
! #endif /* not USG, or USG_SUBTTY_WORKS */
pty_flag = 1;
}
else
***************
*** 5027,5033 ****
current_group = Qnil;
/* If we are using pgrps, get a pgrp number and make it negative. */
! if (!NILP (current_group))
{
#ifdef SIGNALS_VIA_CHARACTERS
/* If possible, send signals to the entire pgrp
--- 5027,5036 ----
current_group = Qnil;
/* If we are using pgrps, get a pgrp number and make it negative. */
! if (NILP (current_group))
! /* Send the signal to the shell's process group. */
! gid = XFASTINT (p->pid);
! else
{
#ifdef SIGNALS_VIA_CHARACTERS
/* If possible, send signals to the entire pgrp
***************
*** 5122,5128 ****
#endif /* defined (SIGNALS_VIA_CHARACTERS) */
#ifdef TIOCGPGRP
! /* Get the pgrp using the tty itself, if we have that.
Otherwise, use the pty to get the pgrp.
On pfa systems, saka@pfu.fujitsu.co.JP writes:
"TIOCGPGRP symbol defined in sys/ioctl.h at E50.
--- 5125,5131 ----
#endif /* defined (SIGNALS_VIA_CHARACTERS) */
#ifdef TIOCGPGRP
! /* Get the current pgrp using the tty itself, if we have that.
Otherwise, use the pty to get the pgrp.
On pfa systems, saka@pfu.fujitsu.co.JP writes:
"TIOCGPGRP symbol defined in sys/ioctl.h at E50.
***************
*** 5137,5164 ****
else
err = ioctl (XINT (p->infd), TIOCGPGRP, &gid);
- #ifdef pfa
if (err == -1)
! gid = - XFASTINT (p->pid);
! #endif /* ! defined (pfa) */
}
if (gid == -1)
no_pgrp = 1;
- else
- gid = - gid;
#else /* ! defined (TIOCGPGRP ) */
/* Can't select pgrps on this system, so we know that
the child itself heads the pgrp. */
! gid = - XFASTINT (p->pid);
#endif /* ! defined (TIOCGPGRP ) */
/* If current_group is lambda, and the shell owns the terminal,
don't send any signal. */
! if (EQ (current_group, Qlambda) && gid == - XFASTINT (p->pid))
return;
}
- else
- gid = - XFASTINT (p->pid);
switch (signo)
{
--- 5140,5167 ----
else
err = ioctl (XINT (p->infd), TIOCGPGRP, &gid);
if (err == -1)
! /* If we can't get the information, assume
! the shell owns the tty. */
! gid = XFASTINT (p->pid);
}
+
+ /* It is not clear whether anything really can set GID to -1.
+ Perhaps on some system one of those ioctls can or could do so.
+ Or perhaps this is vestigial. */
if (gid == -1)
no_pgrp = 1;
#else /* ! defined (TIOCGPGRP ) */
/* Can't select pgrps on this system, so we know that
the child itself heads the pgrp. */
! gid = XFASTINT (p->pid);
#endif /* ! defined (TIOCGPGRP ) */
/* If current_group is lambda, and the shell owns the terminal,
don't send any signal. */
! if (EQ (current_group, Qlambda) && gid == XFASTINT (p->pid))
return;
}
switch (signo)
{
***************
*** 5210,5216 ****
kill (gid, signo);
}
#else /* ! defined (TIOCSIGSEND) */
! EMACS_KILLPG (-gid, signo);
#endif /* ! defined (TIOCSIGSEND) */
}
--- 5213,5219 ----
kill (gid, signo);
}
#else /* ! defined (TIOCSIGSEND) */
! EMACS_KILLPG (gid, signo);
#endif /* ! defined (TIOCSIGSEND) */
}
next prev parent reply other threads:[~2002-07-16 13:29 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-07-15 10:42 [rms@gnu.org: Re: [twurgler@goodyear.com: emacs-21.2.90 on HP 11.0]] WAROQUIERS Philippe
2002-07-16 13:29 ` Richard Stallman [this message]
2002-07-16 13:49 ` Tom Wurgler
2002-07-17 3:03 ` Richard Stallman
-- strict thread matches above, loose matches on Subject: below --
2002-07-17 10:46 WAROQUIERS Philippe
2002-07-17 13:47 ` Tom Wurgler
2002-07-18 14:55 ` Richard Stallman
2002-07-17 18:39 ` Tom Wurgler
2002-07-18 14:55 ` Richard Stallman
2002-07-19 13:37 ` Tom Wurgler
2002-07-19 21:11 ` Stef Van Vlierberghe
2002-07-16 14:11 WAROQUIERS Philippe
[not found] <5983E4DAC939D311B2F20008C7E62E7A075D2365@clsh01xch.office.cfmu.eurocontrol.be>
2002-07-12 11:12 ` Richard Stallman
2002-07-12 21:52 ` Stef Van Vlierberghe
2002-07-13 14:20 ` Richard Stallman
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
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200207161329.g6GDT0v21992@aztec.santafe.edu \
--to=rms@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=philippe.waroquiers@eurocontrol.int \
--cc=stef.van-vlierberghe@eurocontrol.int \
--cc=twurgler@goodyear.com \
/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.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).