# HG changeset patch # User Jim Blandy # Date 740293107 0 # Node ID 68807e370e9d08a54f2a4d86312593e6f7d350d4 # Parent c4e62c57c22c050a5c4cccd09f0c360bfe3ad98d Changes for correct pgrp behavior; approach suggested by Bob Glickstein : * 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. diff -r c4e62c57c22c -r 68807e370e9d src/sysdep.c --- a/src/sysdep.c Thu Jun 17 04:57:09 1993 +0000 +++ b/src/sysdep.c Thu Jun 17 04:58:27 1993 +0000 @@ -571,11 +571,7 @@ #else #ifdef SIGTSTP -#ifdef GETPGRP_NO_ARG - EMACS_KILLPG (getpgrp (), SIGTSTP); -#else EMACS_KILLPG (getpgrp (0), SIGTSTP); -#endif #else /* No SIGTSTP */ #ifdef USG_JOBCTRL /* If you don't know what this is don't mess with it */ @@ -2921,20 +2917,22 @@ #include -#ifndef AIX +#ifndef HAVE_CLOSEDIR int closedir (dirp) register DIR *dirp; /* stream from opendir */ { sys_close (dirp->dd_fd); - /* Some systems allocate the buffer and the DIR all in one block. - Why in the world are we freeing this ourselves anyway? */ - if (dirp->dd_buf != (char *)(dirp + 1)) - xfree ((char *) dirp->dd_buf); /* directory block defined in */ + /* Some systems (like Solaris) allocate the buffer and the DIR all + in one block. Why in the world are we freeing this ourselves + anyway? */ +#if ! (defined (sun) && defined (USG5_4)) + xfree ((char *) dirp->dd_buf); /* directory block defined in */ +#endif xfree ((char *) dirp); } -#endif /* not AIX */ +#endif /* not HAVE_CLOSEDIR */ #endif /* SYSV_SYSTEM_DIR */ #ifdef NONSYSTEM_DIR_LIBRARY