diff options
Diffstat (limited to 'app-editors/vim/files/6.0.046')
-rw-r--r-- | app-editors/vim/files/6.0.046 | 159 |
1 files changed, 159 insertions, 0 deletions
diff --git a/app-editors/vim/files/6.0.046 b/app-editors/vim/files/6.0.046 new file mode 100644 index 000000000000..1788648ad752 --- /dev/null +++ b/app-editors/vim/files/6.0.046 @@ -0,0 +1,159 @@ +To: vim-dev@vim.org +Subject: Patch 6.0.046 +Fcc: outbox +From: Bram Moolenaar <Bram@moolenaar.net> +MIME-Version: 1.0 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 8bit +------------ + +Patch 6.0.046 +Problem: When getrlimit() returns an 8 byte number the check for running + out of stack may fail. (Anthony Meijer) +Solution: Skip the stack check if the limit doesn't fit in a long. +Files: src/auto/configure, src/config.h.in, src/configure.in, + src/os_unix.c + + +*** ../vim60.45/src/auto/configure Fri Sep 28 17:39:10 2001 +--- src/auto/configure Wed Oct 31 13:52:02 2001 +*************** +*** 5145,5158 **** + + fi + + + echo $ac_n "checking for stack_t""... $ac_c" 1>&6 +! echo "configure:5151: checking for stack_t" >&5 + if eval "test \"`echo '$''{'ac_cv_type_stack_t'+set}'`\" = set"; then + echo "$ac_t""(cached) $ac_cv_type_stack_t" 1>&6 + else + cat > conftest.$ac_ext <<EOF +! #line 5156 "configure" + #include "confdefs.h" + + #include "confdefs.h" +--- 5145,5191 ---- + + fi + ++ echo $ac_n "checking for rlim_t""... $ac_c" 1>&6 ++ echo "configure:5150: checking for rlim_t" >&5 ++ if eval "test \"`echo '$''{'ac_cv_type_rlim_t'+set}'`\" = set"; then ++ echo $ac_n "(cached) $ac_c" 1>&6 ++ else ++ cat > conftest.$ac_ext <<EOF ++ #line 5155 "configure" ++ #include "confdefs.h" ++ #include <sys/types.h> ++ #if STDC_HEADERS ++ #include <stdlib.h> ++ #include <stddef.h> ++ #endif ++ EOF ++ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | ++ egrep "(^|[^a-zA-Z_0-9])rlim_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then ++ rm -rf conftest* ++ ac_cv_type_rlim_t=yes ++ else ++ rm -rf conftest* ++ ac_cv_type_rlim_t=no ++ fi ++ rm -f conftest* ++ ++ fi ++ echo "$ac_t""$ac_cv_type_rlim_t" 1>&6 ++ if test $ac_cv_type_rlim_t = no; then ++ cat >> confdefs.h <<\EOF ++ #define rlim_t unsigned long ++ EOF ++ ++ fi ++ + + echo $ac_n "checking for stack_t""... $ac_c" 1>&6 +! echo "configure:5184: checking for stack_t" >&5 + if eval "test \"`echo '$''{'ac_cv_type_stack_t'+set}'`\" = set"; then + echo "$ac_t""(cached) $ac_cv_type_stack_t" 1>&6 + else + cat > conftest.$ac_ext <<EOF +! #line 5189 "configure" + #include "confdefs.h" + + #include "confdefs.h" +*** ../vim60.45/src/config.h.in Sat Jul 14 14:56:13 2001 +--- src/config.h.in Wed Oct 31 13:50:02 2001 +*************** +*** 86,91 **** +--- 86,94 ---- + /* Define to `unsigned' if <sys/types.h> doesn't define. */ + #undef dev_t + ++ /* Define to `unsigned long' if <sys/types.h> doesn't define. */ ++ #undef rlim_t ++ + /* Define to `struct sigaltstack' if <signal.h> doesn't define. */ + #undef stack_t + +*** ../vim60.45/src/configure.in Fri Sep 28 17:39:10 2001 +--- src/configure.in Wed Oct 31 13:49:25 2001 +*************** +*** 1405,1410 **** +--- 1405,1411 ---- + AC_HEADER_TIME + AC_CHECK_TYPE(ino_t, long) + AC_CHECK_TYPE(dev_t, unsigned) ++ AC_CHECK_TYPE(rlim_t, unsigned long) + + AC_MSG_CHECKING(for stack_t) + if eval "test \"`echo '$''{'ac_cv_type_stack_t'+set}'`\" = set"; then +*** ../vim60.45/src/os_unix.c Thu Oct 25 16:34:24 2001 +--- src/os_unix.c Wed Oct 31 13:46:36 2001 +*************** +*** 428,433 **** +--- 428,434 ---- + struct rlimit rlp; + + if (getrlimit(RLIMIT_DATA, &rlp) == 0 ++ && rlp.rlim_cur < ((rlim_t)1 << (sizeof(long_u) * 8 - 1)) + # ifdef RLIM_INFINITY + && rlp.rlim_cur != RLIM_INFINITY + # endif +*************** +*** 544,551 **** + struct rlimit rlp; + int i; + +! /* Set the stack limit to 15/16 of the allowable size. */ + if (getrlimit(RLIMIT_STACK, &rlp) == 0 + # ifdef RLIM_INFINITY + && rlp.rlim_cur != RLIM_INFINITY + # endif +--- 545,554 ---- + struct rlimit rlp; + int i; + +! /* Set the stack limit to 15/16 of the allowable size. Skip this when the +! * limit doesn't fit in a long (rlim_cur might be "long long"). */ + if (getrlimit(RLIMIT_STACK, &rlp) == 0 ++ && rlp.rlim_cur < ((rlim_t)1 << (sizeof(long_u) * 8 - 1)) + # ifdef RLIM_INFINITY + && rlp.rlim_cur != RLIM_INFINITY + # endif +*** ../vim60.45/src/version.c Wed Oct 31 11:56:35 2001 +--- src/version.c Wed Oct 31 14:12:00 2001 +*************** +*** 608,609 **** +--- 608,611 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 46, + /**/ + +-- +No man may purchase alcohol without written consent from his wife. + [real standing law in Pennsylvania, United States of America] + + /// Bram Moolenaar -- Bram@moolenaar.net -- http://www.moolenaar.net \\\ +((( Creator of Vim -- http://vim.sf.net -- ftp://ftp.vim.org/pub/vim ))) + \\\ Help me helping AIDS orphans in Uganda - http://iccf-holland.org /// |