aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJim Blandy1993-06-17 04:58:27 +0000
committerJim Blandy1993-06-17 04:58:27 +0000
commit65aa44ac9b20a10aba7061b7e6758257697d5e5a (patch)
tree963977a0071812fcd7e6e5eca0d961869d73ca2c /src
parent22288fe16c5fb4d722129949d3adccf3001b0bae (diff)
downloademacs-65aa44ac9b20a10aba7061b7e6758257697d5e5a.tar.gz
emacs-65aa44ac9b20a10aba7061b7e6758257697d5e5a.zip
Changes for correct pgrp behavior; approach suggested by Bob
Glickstein <bobg@zindigo.z-code.com>: * m/iris4d.h (LIB_STANDARD): Do list -lbsd here. * s/irix4-0.h (getpgrp, setpgrp): #define these to call BSDgetpgrp and BSDsetpgrp. (GETPGRP_NO_ARG): Don't #define this. * emacs.c (main): Don't test GETPGRP_NO_ARG. * sysdep.c (sys_suspend): Don't test GETPGRP_NO_ARG. * config.h.in (HAVE_CLOSEDIR): Add an #undef for autoconf to change. * sysdep.c (closedir): Only define this if autoconf can't find HAVE_CLOSEDIR. If we're running under solaris (defined (sun) && defined (USG5_4)), then don't free the buffer separately.
Diffstat (limited to 'src')
-rw-r--r--src/sysdep.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/sysdep.c b/src/sysdep.c
index 2bbdf2640f2..5d0d4802a0f 100644
--- a/src/sysdep.c
+++ b/src/sysdep.c
@@ -571,11 +571,7 @@ sys_suspend ()
571#else 571#else
572#ifdef SIGTSTP 572#ifdef SIGTSTP
573 573
574#ifdef GETPGRP_NO_ARG
575 EMACS_KILLPG (getpgrp (), SIGTSTP);
576#else
577 EMACS_KILLPG (getpgrp (0), SIGTSTP); 574 EMACS_KILLPG (getpgrp (0), SIGTSTP);
578#endif
579 575
580#else /* No SIGTSTP */ 576#else /* No SIGTSTP */
581#ifdef USG_JOBCTRL /* If you don't know what this is don't mess with it */ 577#ifdef USG_JOBCTRL /* If you don't know what this is don't mess with it */
@@ -2921,20 +2917,22 @@ char *sys_siglist[NSIG + 1] =
2921 2917
2922#include <dirent.h> 2918#include <dirent.h>
2923 2919
2924#ifndef AIX 2920#ifndef HAVE_CLOSEDIR
2925int 2921int
2926closedir (dirp) 2922closedir (dirp)
2927 register DIR *dirp; /* stream from opendir */ 2923 register DIR *dirp; /* stream from opendir */
2928{ 2924{
2929 sys_close (dirp->dd_fd); 2925 sys_close (dirp->dd_fd);
2930 2926
2931 /* Some systems allocate the buffer and the DIR all in one block. 2927 /* Some systems (like Solaris) allocate the buffer and the DIR all
2932 Why in the world are we freeing this ourselves anyway? */ 2928 in one block. Why in the world are we freeing this ourselves
2933 if (dirp->dd_buf != (char *)(dirp + 1)) 2929 anyway? */
2934 xfree ((char *) dirp->dd_buf); /* directory block defined in <dirent.h> */ 2930#if ! (defined (sun) && defined (USG5_4))
2931 xfree ((char *) dirp->dd_buf); /* directory block defined in <dirent.h> */
2932#endif
2935 xfree ((char *) dirp); 2933 xfree ((char *) dirp);
2936} 2934}
2937#endif /* not AIX */ 2935#endif /* not HAVE_CLOSEDIR */
2938#endif /* SYSV_SYSTEM_DIR */ 2936#endif /* SYSV_SYSTEM_DIR */
2939 2937
2940#ifdef NONSYSTEM_DIR_LIBRARY 2938#ifdef NONSYSTEM_DIR_LIBRARY