]> granicus.if.org Git - vim/commitdiff
updated for version 7.0-237 v7.0.237
authorBram Moolenaar <Bram@vim.org>
Tue, 1 May 2007 17:05:03 +0000 (17:05 +0000)
committerBram Moolenaar <Bram@vim.org>
Tue, 1 May 2007 17:05:03 +0000 (17:05 +0000)
runtime/doc/options.txt
src/option.c
src/version.c

index eadd215c0434415dfca73db59ae21edfc40f2e1a..2ff749b4ac86b199d1aa6c837f5d1b2d1c1d47d3 100644 (file)
@@ -1,4 +1,4 @@
-*options.txt*  For Vim version 7.0.  Last change: 2006 May 04
+*options.txt*  For Vim version 7.0.  Last change: 2007 May 01
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -528,7 +528,12 @@ This sets the 'dir' option to "c:\tmp".  Only a single backslash before the
 ':' is removed.  Thus to include "\:" you have to specify "\\:".
 
 No other commands than "set" are supported, for security reasons (somebody
-might create a Trojan horse text file with modelines).
+might create a Trojan horse text file with modelines).  And not all options
+can be set.  For some options a flag is set, so that when it's used the
+|sandbox| is effective.  Still, there is always a small risc that a modeline
+causes trouble.  E.g., when some joker sets 'textwidth' to 5 all your lines
+are wrapped unexpectedly.  So disable modelines before editing untrusted text.
+The mail ftplugin does this, for example.
 
 Hint: If you would like to do something else than setting an option, you could
 define an autocommand that checks the file for a specific string.  For
@@ -4520,7 +4525,8 @@ A jump table for the options with a short description can be found at |Q_op|.
        languages, no matter what you set 'mkspellmem' to.
 
                                   *'modeline'* *'ml'* *'nomodeline'* *'noml'*
-'modeline' 'ml'                boolean (Vim default: on, Vi default: off)
+'modeline' 'ml'                boolean (Vim default: on (off for root),
+                                Vi default: off)
                        local to buffer
                                                *'modelines'* *'mls'*
 'modelines' 'mls'      number  (default 5)
index 87cf5f6d28bcb4b5f15b06f5d2a236cf212efb37..d7bd92894d44e658e81bb73d76b8f9797e5bdc34 100644 (file)
@@ -3429,6 +3429,11 @@ set_option_default(opt_idx, opt_flags, compatible)
            /* the cast to long is required for Manx C, long_i is needed for
             * MSVC */
            *(int *)varp = (int)(long)(long_i)options[opt_idx].def_val[dvi];
+#ifdef UNIX
+           /* 'modeline' defaults to off for root */
+           if (options[opt_idx].indir == PV_ML && getuid() == ROOT_UID)
+               *(int *)varp = FALSE;
+#endif
            /* May also set global value for local option. */
            if (both)
                *(int *)get_varp_scope(&(options[opt_idx]), OPT_GLOBAL) =
index 4152b506bbdc6a6292c5c46cddc68f65f4fec4dd..ee864a8e7ca5b153f3768d806267691f2a63add1 100644 (file)
@@ -666,6 +666,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    237,
 /**/
     236,
 /**/