From: Thomas Fitzsimmons <fitzsim@fitzsim.org>
To: 30762@debbugs.gnu.org
Cc: Paul Eggert <eggert@cs.ucla.edu>
Subject: bug#30762: 27.0.50; Apparent regression in process.c caused by checking pty_flag before calling setsid
Date: Fri, 09 Mar 2018 23:18:51 -0500 [thread overview]
Message-ID: <m3k1ukef6c.fsf@fitzsim.org> (raw)
Hi,
On x86_64, CentOS 7.3.1611, I noticed that on master tip (I tested
461e6818...), eudc-expand-inline was hanging. It calls the ldapsearch
command line utility (by way of ldap-search-internal) using
start-process, and waits for a password prompt:
(let* ((process-connection-type nil)
(proc-args (append arglist ldap-ldapsearch-args
filter))
(proc (apply #'start-process "ldapsearch" buf
ldap-ldapsearch-prog
proc-args)))
(while (null (progn
(goto-char (point-min))
(re-search-forward
ldap-ldapsearch-password-prompt-regexp
(point-max) t)))
(accept-process-output proc 1))
[...])
master tip gets stuck in that while loop, whereas Emacs 25.1 is fine.
If I print the contents of the buffer within the loop, it shows:
Process ldapsearch stopped (tty output)
I isolated the working-to-non-working transition to this commit:
commit 8e5a769965313a7a1c42b5992ed24e8b0ea71ead
Author: Paul Eggert <eggert@cs.ucla.edu>
Date: Tue Dec 6 23:41:45 2016 -0800
Clean out some IRIX cruft
* etc/MACHINES: Remove obsolete discussion of IRIX.
* src/process.c (allocate_pty) [__sgi]: Remove SGI-specific code.
(create_process) [HAVE_PTYS]: Don't worry about IRIX.
* src/syntax.c (scan_sexps_forward): Remove obsolete comment.
* src/unexelf.c [__sgi]: Don't include <syms.h>.
(unexec) [__sgi]: Remove SGI-specific code.
and specifically the addition of this check in src/process.c:
- /* We tried doing setsid only if pty_flag, but it caused
- process_set_signal to fail on SGI when using a pipe. */
- setsid ();
+ if (pty_flag)
+ setsid ();
If I remove the if (pty_flag) line, then eudc-expand-inline works again.
It may be that ldap-search-internal should change how it's invoking
ldapsearch, but I thought I would report the change in process.c
behavior anyway.
Thomas
next reply other threads:[~2018-03-10 4:18 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-10 4:18 Thomas Fitzsimmons [this message]
2018-03-10 8:36 ` bug#30762: 27.0.50; Apparent regression in process.c caused by checking pty_flag before calling setsid Eli Zaretskii
2018-03-11 2:33 ` Paul Eggert
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=m3k1ukef6c.fsf@fitzsim.org \
--to=fitzsim@fitzsim.org \
--cc=30762@debbugs.gnu.org \
--cc=eggert@cs.ucla.edu \
/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 external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.