From: YAMAMOTO Mitsuharu Date: Fri, 11 Jan 2008 10:29:07 +0000 (+0000) Subject: (mac_emacs_pid) [MAC_OSX]: New variable. X-Git-Tag: emacs-pretest-22.1.90~107 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=5ee4de5319f07e1da96835eece3d8a79cdae3da2;p=emacs.git (mac_emacs_pid) [MAC_OSX]: New variable. [MAC_OSX] (init_mac_osx_environment): Initialize it. [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0 when used on child processes. --- diff --git a/src/ChangeLog b/src/ChangeLog index 287959462be..25b994e3ab8 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,10 @@ +2008-01-11 YAMAMOTO Mitsuharu + + * mac.c (mac_emacs_pid) [MAC_OSX]: New variable. + [MAC_OSX] (init_mac_osx_environment): Initialize it. + [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0 + when used on child processes. + 2008-01-10 Chong Yidong * process.c (wait_reading_process_output): Check for window diff --git a/src/mac.c b/src/mac.c index e8cb6a15402..dace8864320 100644 --- a/src/mac.c +++ b/src/mac.c @@ -5013,6 +5013,9 @@ extern int noninteractive; sys_select. */ static CFMutableDictionaryRef cfsockets_for_select; +/* Process ID of Emacs. */ +static pid_t mac_emacs_pid; + static void socket_callback (s, type, address, data, info) CFSocketRef s; @@ -5092,7 +5095,7 @@ mac_try_close_socket (fd) int fd; { #if SELECT_USE_CFSOCKET - if (cfsockets_for_select) + if (getpid () == mac_emacs_pid && cfsockets_for_select) { void *key = (void *) fd; CFSocketRef socket = @@ -5329,6 +5332,8 @@ init_mac_osx_environment () char *p, *q; struct stat st; + mac_emacs_pid = getpid (); + /* Initialize locale related variables. */ mac_system_script_code = (ScriptCode) GetScriptManagerVariable (smSysScript);