# HG changeset patch # User Christian Brabandt # Date 1489259704 -3600 # Node ID 3b36da20ad7308c2f8846cdd35f7a9aa01d2ecc5 # Parent 5af1253d229c6060e0bdc255d59af1f9de901780 patch 8.0.0445: getpgid is not supported on all systems commit https://github.com/vim/vim/commit/2fcf6688bc3a8df2dff9c352d415b89db8b33668 Author: Bram Moolenaar Date: Sat Mar 11 20:03:42 2017 +0100 patch 8.0.0445: getpgid is not supported on all systems Problem: Getpgid is not supported on all systems. Solution: Add a configure check. diff --git a/src/auto/configure b/src/auto/configure --- a/src/auto/configure +++ b/src/auto/configure @@ -12022,7 +12022,7 @@ fi for ac_func in fchdir fchown fsync getcwd getpseudotty \ getpwent getpwnam getpwuid getrlimit gettimeofday getwd lstat \ memset mkdtemp nanosleep opendir putenv qsort readlink select setenv \ - setpgid setsid sigaltstack sigstack sigset sigsetjmp sigaction \ + getpgid setpgid setsid sigaltstack sigstack sigset sigsetjmp sigaction \ sigprocmask sigvec strcasecmp strerror strftime stricmp strncasecmp \ strnicmp strpbrk strtol tgetent towlower towupper iswupper \ usleep utime utimes diff --git a/src/config.h.in b/src/config.h.in --- a/src/config.h.in +++ b/src/config.h.in @@ -158,7 +158,9 @@ #undef HAVE_FCHOWN #undef HAVE_FSEEKO #undef HAVE_FSYNC +#undef HAVE_FLOAT_FUNCS #undef HAVE_GETCWD +#undef HAVE_GETPGID #undef HAVE_GETPSEUDOTTY #undef HAVE_GETPWENT #undef HAVE_GETPWNAM @@ -167,13 +169,12 @@ #undef HAVE_GETTIMEOFDAY #undef HAVE_GETWD #undef HAVE_ICONV -#undef HAVE_NL_LANGINFO_CODESET #undef HAVE_LSTAT #undef HAVE_MEMSET #undef HAVE_MKDTEMP #undef HAVE_NANOSLEEP +#undef HAVE_NL_LANGINFO_CODESET #undef HAVE_OPENDIR -#undef HAVE_FLOAT_FUNCS #undef HAVE_PUTENV #undef HAVE_QSORT #undef HAVE_READLINK diff --git a/src/configure.ac b/src/configure.ac --- a/src/configure.ac +++ b/src/configure.ac @@ -3609,7 +3609,7 @@ dnl Can only be used for functions that AC_CHECK_FUNCS(fchdir fchown fsync getcwd getpseudotty \ getpwent getpwnam getpwuid getrlimit gettimeofday getwd lstat \ memset mkdtemp nanosleep opendir putenv qsort readlink select setenv \ - setpgid setsid sigaltstack sigstack sigset sigsetjmp sigaction \ + getpgid setpgid setsid sigaltstack sigstack sigset sigsetjmp sigaction \ sigprocmask sigvec strcasecmp strerror strftime stricmp strncasecmp \ strnicmp strpbrk strtol tgetent towlower towupper iswupper \ usleep utime utimes) diff --git a/src/os_unix.c b/src/os_unix.c --- a/src/os_unix.c +++ b/src/os_unix.c @@ -3081,7 +3081,7 @@ executable_file(char_u *name) } /* - * Return 1 if "name" can be found in $PATH and executed, 0 if not. + * Return TRUE if "name" can be found in $PATH and executed, FALSE if not. * If "use_path" is FALSE only check if "name" is executable. * Return -1 if unknown. */ @@ -5429,8 +5429,10 @@ mch_stop_job(job_T *job, char_u *how) /* TODO: have an option to only kill the process, not the group? */ job_pid = job->jv_pid; +#ifdef HAVE_GETPGID if (job_pid == getpgid(job_pid)) job_pid = -job_pid; +#endif kill(job_pid, sig); diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -765,6 +765,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 445, +/**/ 444, /**/ 443,