From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Tom Wurgler Newsgroups: gmane.emacs.devel Subject: Re: [rms@gnu.org: Re: [twurgler@goodyear.com: emacs-21.2.90 on HP 11.0]] Date: Tue, 16 Jul 2002 09:49:09 -0400 (EDT) Sender: emacs-devel-admin@gnu.org Message-ID: <200207161349.JAA15889@rds294.goodyear.com> References: <5983E4DAC939D311B2F20008C7E62E7A075D2371@clsh01xch.office.cfmu.eurocontrol.be> <200207161329.g6GDT0v21992@aztec.santafe.edu> NNTP-Posting-Host: localhost.gmane.org X-Trace: main.gmane.org 1026828764 29840 127.0.0.1 (16 Jul 2002 14:12:44 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Tue, 16 Jul 2002 14:12:44 +0000 (UTC) Cc: philippe.waroquiers@eurocontrol.int, stef.van-vlierberghe@eurocontrol.int, philippe.waroquiers@eurocontrol.int, twurgler@goodyear.com, emacs-devel@gnu.org Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.33 #1 (Debian)) id 17UT4E-0007lB-00 for ; Tue, 16 Jul 2002 16:12:42 +0200 Original-Received: from fencepost.gnu.org ([199.232.76.164]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 17UTFB-0007vZ-00 for ; Tue, 16 Jul 2002 16:24:01 +0200 Original-Received: from localhost ([127.0.0.1] helo=fencepost.gnu.org) by fencepost.gnu.org with esmtp (Exim 3.35 #1 (Debian)) id 17USiw-0005Ft-00; Tue, 16 Jul 2002 09:50:42 -0400 Original-Received: from p2.goodyear.com ([12.4.195.34] helo=goodyear.com) by fencepost.gnu.org with esmtp (Exim 3.35 #1 (Debian)) id 17USi8-0005Dz-00; Tue, 16 Jul 2002 09:49:52 -0400 Original-Received: from rds294.goodyear.com (rds294.goodyear.com [163.243.27.160]) by goodyear.com (8.9.1b+Sun/8.8.8) with ESMTP id JAA20300; Tue, 16 Jul 2002 09:49:15 -0400 (EDT) Original-Received: (from t901353@localhost) by rds294.goodyear.com (8.9.3 (PHNE_18546)/8.9.3) id JAA15889; Tue, 16 Jul 2002 09:49:09 -0400 (EDT) Original-To: rms@gnu.org In-Reply-To: <200207161329.g6GDT0v21992@aztec.santafe.edu> (message from Richard Stallman on Tue, 16 Jul 2002 07:29:00 -0600 (MDT)) Errors-To: emacs-devel-admin@gnu.org X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.0.11 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.emacs.devel:5791 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:5791 Hi, I installed the patch to process.c, added the line to hpux11.h, took out the change of Philippe's in atimer.c, uncommented the lines in hpux11.h that I had commented out (the POSIX stuff), then compiled it with HP's cc. Results: 1) I can now abort a running job in a shell fine. 2) (sleep-for 3) still never comes back. 3) Cursor doesn't blink and still goes away until you touch a key. Thanks for all your efforts. =========================================================================== Recently Richard Stallman wrote: > Date: Tue, 16 Jul 2002 07:29:00 -0600 (MDT) > From: Richard Stallman > CC: stef.van-vlierberghe@eurocontrol.int, philippe.waroquiers@eurocontrol.int, > twurgler@goodyear.com, emacs-devel@gnu.org > Reply-to: rms@gnu.org > > 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) */ > } > > >