components/vim/vim72-patches/7.2.130
author Petr Sumbera <petr.sumbera@oracle.com>
Fri, 03 Jun 2011 00:34:01 -0700
changeset 282 50b874aa8c39
parent 198 172fc01ce997
permissions -rw-r--r--
7038523 Problem with network/wireshark 7049344 Problem with network/wireshark 7012174 Problem with network/wireshark
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
198
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     1
To: [email protected]
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     2
Subject: Patch 7.2.130
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     3
Fcc: outbox
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     4
From: Bram Moolenaar <[email protected]>
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     5
Mime-Version: 1.0
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     6
Content-Type: text/plain; charset=ISO-8859-1
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     7
Content-Transfer-Encoding: 8bit
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     8
------------
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     9
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    10
Patch 7.2.130
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    11
Problem:    Vim may haing until CTRL-C is typed when using CTRL-Z.
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    12
Solution:   Avoid using pause().  Also use "volatile" for variables used in
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    13
            signal functions. (Dominique Pelle)
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    14
Files:      src/auto/configure, src/configure.in, src/config.h.in,
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    15
            src/globals.h, src/os_unix.c
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    16
    
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    17
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    18
*** ../vim-7.2.129/src/auto/configure	Thu Nov 20 10:36:04 2008
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    19
--- src/auto/configure	Mon Mar  2 02:36:52 2009
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    20
***************
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    21
*** 11565,11570 ****
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    22
--- 11565,11631 ----
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    23
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    24
  fi
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    25
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    26
+ { $as_echo "$as_me:$LINENO: checking for working volatile" >&5
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    27
+ $as_echo_n "checking for working volatile... " >&6; }
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    28
+ if test "${ac_cv_c_volatile+set}" = set; then
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    29
+   $as_echo_n "(cached) " >&6
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    30
+ else
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    31
+   cat >conftest.$ac_ext <<_ACEOF
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    32
+ /* confdefs.h.  */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    33
+ _ACEOF
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    34
+ cat confdefs.h >>conftest.$ac_ext
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    35
+ cat >>conftest.$ac_ext <<_ACEOF
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    36
+ /* end confdefs.h.  */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    37
+ 
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    38
+ int
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    39
+ main ()
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    40
+ {
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    41
+ 
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    42
+ volatile int x;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    43
+ int * volatile y = (int *) 0;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    44
+ return !x && !y;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    45
+   ;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    46
+   return 0;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    47
+ }
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    48
+ _ACEOF
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    49
+ rm -f conftest.$ac_objext
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    50
+ if { (ac_try="$ac_compile"
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    51
+ case "(($ac_try" in
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    52
+   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    53
+   *) ac_try_echo=$ac_try;;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    54
+ esac
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    55
+ eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    56
+ $as_echo "$ac_try_echo") >&5
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    57
+   (eval "$ac_compile") 2>conftest.er1
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    58
+   ac_status=$?
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    59
+   grep -v '^ *+' conftest.er1 >conftest.err
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    60
+   rm -f conftest.er1
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    61
+   cat conftest.err >&5
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    62
+   $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    63
+   (exit $ac_status); } && {
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    64
+ 	 test -z "$ac_c_werror_flag" ||
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    65
+ 	 test ! -s conftest.err
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    66
+        } && test -s conftest.$ac_objext; then
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    67
+   ac_cv_c_volatile=yes
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    68
+ else
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    69
+   $as_echo "$as_me: failed program was:" >&5
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    70
+ sed 's/^/| /' conftest.$ac_ext >&5
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    71
+ 
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    72
+ 	ac_cv_c_volatile=no
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    73
+ fi
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    74
+ 
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    75
+ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    76
+ fi
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    77
+ { $as_echo "$as_me:$LINENO: result: $ac_cv_c_volatile" >&5
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    78
+ $as_echo "$ac_cv_c_volatile" >&6; }
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    79
+ if test $ac_cv_c_volatile = no; then
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    80
+ 
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    81
+ cat >>confdefs.h <<\_ACEOF
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    82
+ #define volatile /**/
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    83
+ _ACEOF
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    84
+ 
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    85
+ fi
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    86
+ 
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    87
  { $as_echo "$as_me:$LINENO: checking for mode_t" >&5
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    88
  $as_echo_n "checking for mode_t... " >&6; }
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    89
  if test "${ac_cv_type_mode_t+set}" = set; then
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    90
*** ../vim-7.2.129/src/configure.in	Thu Nov 20 10:36:04 2008
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    91
--- src/configure.in	Sun Feb 22 21:47:44 2009
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    92
***************
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    93
*** 2148,2153 ****
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    94
--- 2148,2154 ----
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    95
  dnl Checks for typedefs, structures, and compiler characteristics.
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    96
  AC_PROG_GCC_TRADITIONAL
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    97
  AC_C_CONST
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    98
+ AC_C_VOLATILE
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    99
  AC_TYPE_MODE_T
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   100
  AC_TYPE_OFF_T
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   101
  AC_TYPE_PID_T
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   102
*** ../vim-7.2.129/src/config.h.in	Tue Jun 24 23:47:46 2008
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   103
--- src/config.h.in	Mon Feb 23 00:13:17 2009
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   104
***************
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   105
*** 50,55 ****
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   106
--- 50,58 ----
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   107
  /* Define to empty if the keyword does not work.  */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   108
  #undef const
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   109
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   110
+ /* Define to empty if the keyword does not work.  */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   111
+ #undef volatile
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   112
+ 
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   113
  /* Define to `int' if <sys/types.h> doesn't define.  */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   114
  #undef mode_t
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   115
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   116
*** ../vim-7.2.129/src/globals.h	Tue Jan  6 16:13:42 2009
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   117
--- src/globals.h	Mon Mar  2 02:40:16 2009
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   118
***************
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   119
*** 482,489 ****
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   120
  /*
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   121
   * While executing external commands or in Ex mode, should not insert GUI
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   122
   * events in the input buffer: Set hold_gui_events to non-zero.
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   123
   */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   124
! EXTERN int	hold_gui_events INIT(= 0);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   125
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   126
  /*
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   127
   * When resizing the shell is postponed, remember the new size, and call
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   128
--- 482,491 ----
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   129
  /*
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   130
   * While executing external commands or in Ex mode, should not insert GUI
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   131
   * events in the input buffer: Set hold_gui_events to non-zero.
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   132
+  *
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   133
+  * volatile because it is used in signal handler sig_sysmouse().
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   134
   */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   135
! EXTERN volatile int hold_gui_events INIT(= 0);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   136
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   137
  /*
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   138
   * When resizing the shell is postponed, remember the new size, and call
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   139
***************
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   140
*** 597,603 ****
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   141
  EXTERN int	really_exiting INIT(= FALSE);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   142
  				/* TRUE when we are sure to exit, e.g., after
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   143
  				 * a deadly signal */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   144
! EXTERN int	full_screen INIT(= FALSE);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   145
  				/* TRUE when doing full-screen output
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   146
  				 * otherwise only writing some messages */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   147
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   148
--- 599,606 ----
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   149
  EXTERN int	really_exiting INIT(= FALSE);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   150
  				/* TRUE when we are sure to exit, e.g., after
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   151
  				 * a deadly signal */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   152
! /* volatile because it is used in signal handler deathtrap(). */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   153
! EXTERN volatile int full_screen INIT(= FALSE);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   154
  				/* TRUE when doing full-screen output
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   155
  				 * otherwise only writing some messages */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   156
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   157
***************
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   158
*** 739,748 ****
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   159
   */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   160
  EXTERN JMP_BUF lc_jump_env;	/* argument to SETJMP() */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   161
  # ifdef SIGHASARG
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   162
! EXTERN int lc_signal;		/* catched signal number, 0 when no was signal
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   163
! 				   catched; used for mch_libcall() */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   164
  # endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   165
! EXTERN int lc_active INIT(= FALSE); /* TRUE when lc_jump_env is valid. */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   166
  #endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   167
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   168
  #if defined(FEAT_MBYTE) || defined(FEAT_POSTSCRIPT)
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   169
--- 747,758 ----
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   170
   */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   171
  EXTERN JMP_BUF lc_jump_env;	/* argument to SETJMP() */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   172
  # ifdef SIGHASARG
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   173
! /* volatile because it is used in signal handlers. */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   174
! EXTERN volatile int lc_signal;	/* caught signal number, 0 when no was signal
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   175
! 				   caught; used for mch_libcall() */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   176
  # endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   177
! /* volatile because it is used in signal handler deathtrap(). */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   178
! EXTERN volatile int lc_active INIT(= FALSE); /* TRUE when lc_jump_env is valid. */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   179
  #endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   180
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   181
  #if defined(FEAT_MBYTE) || defined(FEAT_POSTSCRIPT)
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   182
***************
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   183
*** 986,992 ****
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   184
  EXTERN FILE	*scriptout  INIT(= NULL);   /* stream to write script to */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   185
  EXTERN int	read_cmd_fd INIT(= 0);	    /* fd to read commands from */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   186
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   187
! EXTERN int	got_int INIT(= FALSE);	    /* set to TRUE when interrupt
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   188
  						signal occurred */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   189
  #ifdef USE_TERM_CONSOLE
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   190
  EXTERN int	term_console INIT(= FALSE); /* set to TRUE when console used */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   191
--- 996,1003 ----
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   192
  EXTERN FILE	*scriptout  INIT(= NULL);   /* stream to write script to */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   193
  EXTERN int	read_cmd_fd INIT(= 0);	    /* fd to read commands from */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   194
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   195
! /* volatile because it is used in signal handler catch_sigint(). */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   196
! EXTERN volatile int got_int INIT(= FALSE);    /* set to TRUE when interrupt
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   197
  						signal occurred */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   198
  #ifdef USE_TERM_CONSOLE
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   199
  EXTERN int	term_console INIT(= FALSE); /* set to TRUE when console used */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   200
*** ../vim-7.2.129/src/os_unix.c	Sun Feb 22 02:51:37 2009
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   201
--- src/os_unix.c	Mon Mar  2 01:05:50 2009
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   202
***************
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   203
*** 181,187 ****
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   204
  	&& defined(FEAT_TITLE) && !defined(FEAT_GUI_GTK)
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   205
  # define SET_SIG_ALARM
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   206
  static RETSIGTYPE sig_alarm __ARGS(SIGPROTOARG);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   207
! static int sig_alarm_called;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   208
  #endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   209
  static RETSIGTYPE deathtrap __ARGS(SIGPROTOARG);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   210
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   211
--- 181,188 ----
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   212
  	&& defined(FEAT_TITLE) && !defined(FEAT_GUI_GTK)
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   213
  # define SET_SIG_ALARM
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   214
  static RETSIGTYPE sig_alarm __ARGS(SIGPROTOARG);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   215
! /* volatile because it is used in signal handler sig_alarm(). */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   216
! static volatile int sig_alarm_called;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   217
  #endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   218
  static RETSIGTYPE deathtrap __ARGS(SIGPROTOARG);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   219
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   220
***************
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   221
*** 201,213 ****
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   222
  # define SIG_ERR	((RETSIGTYPE (*)())-1)
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   223
  #endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   224
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   225
! static int	do_resize = FALSE;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   226
  #ifndef __EMX__
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   227
  static char_u	*extra_shell_arg = NULL;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   228
  static int	show_shell_mess = TRUE;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   229
  #endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   230
! static int	deadly_signal = 0;	    /* The signal we caught */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   231
! static int	in_mch_delay = FALSE;	    /* sleeping in mch_delay() */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   232
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   233
  static int curr_tmode = TMODE_COOK;	/* contains current terminal mode */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   234
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   235
--- 202,217 ----
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   236
  # define SIG_ERR	((RETSIGTYPE (*)())-1)
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   237
  #endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   238
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   239
! /* volatile because it is used in signal handler sig_winch(). */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   240
! static volatile int do_resize = FALSE;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   241
  #ifndef __EMX__
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   242
  static char_u	*extra_shell_arg = NULL;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   243
  static int	show_shell_mess = TRUE;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   244
  #endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   245
! /* volatile because it is used in signal handler deathtrap(). */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   246
! static volatile int deadly_signal = 0;	    /* The signal we caught */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   247
! /* volatile because it is used in signal handler deathtrap(). */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   248
! static volatile int in_mch_delay = FALSE;    /* sleeping in mch_delay() */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   249
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   250
  static int curr_tmode = TMODE_COOK;	/* contains current terminal mode */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   251
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   252
***************
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   253
*** 802,808 ****
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   254
  #endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   255
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   256
  /*
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   257
!  * We need correct potatotypes for a signal function, otherwise mean compilers
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   258
   * will barf when the second argument to signal() is ``wrong''.
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   259
   * Let me try it with a few tricky defines from my own osdef.h	(jw).
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   260
   */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   261
--- 806,812 ----
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   262
  #endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   263
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   264
  /*
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   265
!  * We need correct prototypes for a signal function, otherwise mean compilers
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   266
   * will barf when the second argument to signal() is ``wrong''.
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   267
   * Let me try it with a few tricky defines from my own osdef.h	(jw).
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   268
   */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   269
***************
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   270
*** 1068,1080 ****
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   271
      SIGRETURN;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   272
  }
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   273
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   274
! #ifdef _REENTRANT
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   275
  /*
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   276
   * On Solaris with multi-threading, suspending might not work immediately.
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   277
   * Catch the SIGCONT signal, which will be used as an indication whether the
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   278
   * suspending has been done or not.
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   279
   */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   280
! static int sigcont_received;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   281
  static RETSIGTYPE sigcont_handler __ARGS(SIGPROTOARG);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   282
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   283
  /*
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   284
--- 1072,1089 ----
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   285
      SIGRETURN;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   286
  }
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   287
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   288
! #if defined(_REENTRANT) && defined(SIGCONT)
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   289
  /*
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   290
   * On Solaris with multi-threading, suspending might not work immediately.
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   291
   * Catch the SIGCONT signal, which will be used as an indication whether the
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   292
   * suspending has been done or not.
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   293
+  *
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   294
+  * On Linux, signal is not always handled immediately either.
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   295
+  * See https://bugs.launchpad.net/bugs/291373
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   296
+  *
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   297
+  * volatile because it is used in in signal handler sigcont_handler().
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   298
   */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   299
! static volatile int sigcont_received;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   300
  static RETSIGTYPE sigcont_handler __ARGS(SIGPROTOARG);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   301
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   302
  /*
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   303
***************
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   304
*** 1118,1132 ****
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   305
      }
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   306
  # endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   307
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   308
! # ifdef _REENTRANT
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   309
      sigcont_received = FALSE;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   310
  # endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   311
      kill(0, SIGTSTP);	    /* send ourselves a STOP signal */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   312
! # ifdef _REENTRANT
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   313
!     /* When we didn't suspend immediately in the kill(), do it now.  Happens
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   314
!      * on multi-threaded Solaris. */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   315
!     if (!sigcont_received)
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   316
! 	pause();
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   317
  # endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   318
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   319
  # ifdef FEAT_TITLE
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   320
--- 1127,1154 ----
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   321
      }
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   322
  # endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   323
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   324
! # if defined(_REENTRANT) && defined(SIGCONT)
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   325
      sigcont_received = FALSE;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   326
  # endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   327
      kill(0, SIGTSTP);	    /* send ourselves a STOP signal */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   328
! # if defined(_REENTRANT) && defined(SIGCONT)
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   329
!     /*
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   330
!      * Wait for the SIGCONT signal to be handled. It generally happens
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   331
!      * immediately, but somehow not all the time. Do not call pause()
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   332
!      * because there would be race condition which would hang Vim if
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   333
!      * signal happened in between the test of sigcont_received and the
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   334
!      * call to pause(). If signal is not yet received, call sleep(0)
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   335
!      * to just yield CPU. Signal should then be received. If somehow
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   336
!      * it's still not received, sleep 1, 2, 3 ms. Don't bother waiting
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   337
!      * further if signal is not received after 1+2+3+4 ms (not expected
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   338
!      * to happen).
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   339
!      */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   340
!     {
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   341
! 	long wait;
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   342
! 	for (wait = 0; !sigcont_received && wait <= 3L; wait++)
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   343
! 	    /* Loop is not entered most of the time */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   344
! 	    mch_delay(wait, FALSE);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   345
!     }
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   346
  # endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   347
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   348
  # ifdef FEAT_TITLE
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   349
***************
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   350
*** 1175,1181 ****
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   351
  #ifdef SIGTSTP
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   352
      signal(SIGTSTP, restricted ? SIG_IGN : SIG_DFL);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   353
  #endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   354
! #ifdef _REENTRANT
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   355
      signal(SIGCONT, sigcont_handler);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   356
  #endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   357
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   358
--- 1197,1203 ----
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   359
  #ifdef SIGTSTP
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   360
      signal(SIGTSTP, restricted ? SIG_IGN : SIG_DFL);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   361
  #endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   362
! #if defined(_REENTRANT) && defined(SIGCONT)
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   363
      signal(SIGCONT, sigcont_handler);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   364
  #endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   365
  
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   366
***************
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   367
*** 1234,1240 ****
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   368
  reset_signals()
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   369
  {
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   370
      catch_signals(SIG_DFL, SIG_DFL);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   371
! #ifdef _REENTRANT
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   372
      /* SIGCONT isn't in the list, because its default action is ignore */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   373
      signal(SIGCONT, SIG_DFL);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   374
  #endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   375
--- 1256,1262 ----
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   376
  reset_signals()
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   377
  {
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   378
      catch_signals(SIG_DFL, SIG_DFL);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   379
! #if defined(_REENTRANT) && defined(SIGCONT)
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   380
      /* SIGCONT isn't in the list, because its default action is ignore */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   381
      signal(SIGCONT, SIG_DFL);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   382
  #endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   383
***************
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   384
*** 5899,5905 ****
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   385
--- 5921,5929 ----
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   386
  	     * we are going to suspend or starting an external process
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   387
  	     * so we shouldn't  have problem with this
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   388
  	     */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   389
+ # ifdef SIGTSTP
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   390
  	    signal(SIGTSTP, restricted ? SIG_IGN : SIG_DFL);
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   391
+ # endif
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   392
  	    return 1; /* succeed */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   393
  	}
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   394
  	if (gpm_fd == -2)
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   395
*** ../vim-7.2.129/src/version.c	Mon Mar  2 02:11:09 2009
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   396
--- src/version.c	Mon Mar  2 02:36:00 2009
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   397
***************
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   398
*** 678,679 ****
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   399
--- 678,681 ----
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   400
  {   /* Add new patch number below this line */
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   401
+ /**/
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   402
+     130,
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   403
  /**/
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   404
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   405
-- 
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   406
hundred-and-one symptoms of being an internet addict:
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   407
148. You find it easier to dial-up the National Weather Service
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   408
     Weather/your_town/now.html than to simply look out the window.
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   409
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   410
 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   411
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   412
\\\        download, build and distribute -- http://www.A-A-P.org        ///
172fc01ce997 7016732 move vim from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   413
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///