[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#5819: 23.1.93; OSX: start-process sometimes returns an unready proce
From: |
YAMAMOTO Mitsuharu |
Subject: |
bug#5819: 23.1.93; OSX: start-process sometimes returns an unready process |
Date: |
Fri, 09 Apr 2010 09:48:29 +0900 |
User-agent: |
Wanderlust/2.14.0 (Africa) SEMI/1.14.6 (Maruoka) FLIM/1.14.8 (Shijō) APEL/10.6 Emacs/22.3 (sparc-sun-solaris2.8) MULE/5.0 (SAKAKI) |
>>>>> On Fri, 09 Apr 2010 00:10:09 +0200, Markus Triska <markus.triska@gmx.at>
>>>>> said:
> YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes:
>> The following simpler one seems to work for me on 10.4 (but not on
>> 10.3, again). Could you test if it also works for you, with
>> respect to this problem and #726 (23.0.60; OSX: Complete OS crash)?
> Your patch fixes both issues for me. Thank you very much!
Thanks for testing.
Maintainers, which branch should I install this patch to? Bug#726 is
marked as important.
YAMAMOTO Mitsuharu
mituharu@math.s.chiba-u.ac.jp
=== modified file 'src/s/darwin.h'
*** src/s/darwin.h 2010-03-30 04:55:59 +0000
--- src/s/darwin.h 2010-04-05 03:21:53 +0000
***************
*** 90,95 ****
--- 90,113 ----
*/
#define HAVE_PTYS
+ /* Run only once. We need a `for'-loop because the code uses
+ `continue'. */
+ #define PTY_ITERATION for (i = 0; i < 1; i++)
+ #define PTY_NAME_SPRINTF /* none */
+ #define PTY_TTY_NAME_SPRINTF /* none */
+ /* Note that openpty may fork via grantpt on Mac OS X 10.4/Darwin 8.
+ But we don't have to block SIGCHLD because it is blocked in the
+ implementation of grantpt. */
+ #define PTY_OPEN \
+ do \
+ { \
+ int slave; \
+ if (openpty (&fd, &slave, pty_name, NULL, NULL) == -1) \
+ fd = -1; \
+ else \
+ emacs_close (slave); \
+ } \
+ while (0)
/**
* PTYs only work correctly on Darwin 7 or higher. So make the