diff options
Diffstat (limited to 'data/vim/patches/8.1.0386')
-rw-r--r-- | data/vim/patches/8.1.0386 | 181 |
1 files changed, 181 insertions, 0 deletions
diff --git a/data/vim/patches/8.1.0386 b/data/vim/patches/8.1.0386 new file mode 100644 index 000000000..3f77f9cdd --- /dev/null +++ b/data/vim/patches/8.1.0386 @@ -0,0 +1,181 @@ +To: vim_dev@googlegroups.com +Subject: Patch 8.1.0386 +Fcc: outbox +From: Bram Moolenaar <Bram@moolenaar.net> +Mime-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +------------ + +Patch 8.1.0386 +Problem: Cannot test with non-default option value. +Solution: Add test_option_not_set(). +Files: runtime/doc/eval.txt, src/option.c, src/proto/option.pro, + src/evalfunc.c + + +*** ../vim-8.1.0385/runtime/doc/eval.txt 2018-09-10 21:04:09.860392752 +0200 +--- runtime/doc/eval.txt 2018-09-13 20:30:37.739701623 +0200 +*************** +*** 2466,2471 **** +--- 2473,2479 ---- + test_null_list() List null value for testing + test_null_partial() Funcref null value for testing + test_null_string() String null value for testing ++ test_option_not_set({name}) none reset flag indicating option was set + test_override({expr}, {val}) none test with Vim internal overrides + test_settime({expr}) none set current time for testing + timer_info([{id}]) List information about timers +*************** +*** 8723,8728 **** +--- 8738,8752 ---- + test_null_string() *test_null_string()* + Return a String that is null. Only useful for testing. + ++ test_option_not_set({name}) *test_option_not_set()* ++ Reset the flag that indicates option {name} was set. Thus it ++ looks like it still has the default value. Use like this: > ++ set ambiwidth=double ++ call test_option_not_set('ambiwidth') ++ < Now the 'ambiwidth' option behaves like it was never changed, ++ even though the value is "double". ++ Only to be used for testing! ++ + test_override({name}, {val}) *test_override()* + Overrides certain parts of Vims internal processing to be able + to run tests. Only to be used for testing Vim! +--- 11734,11737 ---- + Find more information in the file src/testdir/README.txt. + + +! vim:tw=78:ts=8:noet:ft=help:norl: +*** ../vim-8.1.0385/src/option.c 2018-09-10 21:15:34.637000672 +0200 +--- src/option.c 2018-09-13 20:25:54.982495459 +0200 +*************** +*** 12480,12492 **** + /* + * Reset the flag indicating option "name" was set. + */ +! void + reset_option_was_set(char_u *name) + { + int idx = findoption(name); + + if (idx >= 0) + options[idx].flags &= ~P_WAS_SET; + } + + /* +--- 12480,12496 ---- + /* + * Reset the flag indicating option "name" was set. + */ +! int + reset_option_was_set(char_u *name) + { + int idx = findoption(name); + + if (idx >= 0) ++ { + options[idx].flags &= ~P_WAS_SET; ++ return OK; ++ } ++ return FAIL; + } + + /* +*** ../vim-8.1.0385/src/proto/option.pro 2018-09-13 17:26:31.091401618 +0200 +--- src/proto/option.pro 2018-09-13 20:25:58.654459076 +0200 +*************** +*** 55,61 **** + void vimrc_found(char_u *fname, char_u *envname); + void change_compatible(int on); + int option_was_set(char_u *name); +! void reset_option_was_set(char_u *name); + int can_bs(int what); + void save_file_ff(buf_T *buf); + int file_ff_differs(buf_T *buf, int ignore_empty); +--- 55,61 ---- + void vimrc_found(char_u *fname, char_u *envname); + void change_compatible(int on); + int option_was_set(char_u *name); +! int reset_option_was_set(char_u *name); + int can_bs(int what); + void save_file_ff(buf_T *buf); + int file_ff_differs(buf_T *buf, int ignore_empty); +*** ../vim-8.1.0385/src/evalfunc.c 2018-09-13 15:33:39.601712271 +0200 +--- src/evalfunc.c 2018-09-13 20:26:35.782091366 +0200 +*************** +*** 415,420 **** +--- 415,421 ---- + static void f_test_alloc_fail(typval_T *argvars, typval_T *rettv); + static void f_test_autochdir(typval_T *argvars, typval_T *rettv); + static void f_test_feedinput(typval_T *argvars, typval_T *rettv); ++ static void f_test_option_not_set(typval_T *argvars, typval_T *rettv); + static void f_test_override(typval_T *argvars, typval_T *rettv); + static void f_test_garbagecollect_now(typval_T *argvars, typval_T *rettv); + static void f_test_ignore_error(typval_T *argvars, typval_T *rettv); +*************** +*** 922,927 **** +--- 923,929 ---- + {"test_null_list", 0, 0, f_test_null_list}, + {"test_null_partial", 0, 0, f_test_null_partial}, + {"test_null_string", 0, 0, f_test_null_string}, ++ {"test_option_not_set", 1, 1, f_test_option_not_set}, + {"test_override", 2, 2, f_test_override}, + {"test_settime", 1, 1, f_test_settime}, + #ifdef FEAT_TIMERS +*************** +*** 13062,13068 **** + } + + /* +! * "test_disable({name}, {val})" function + */ + static void + f_test_override(typval_T *argvars, typval_T *rettv UNUSED) +--- 13064,13088 ---- + } + + /* +! * "test_option_not_set({name})" function +! */ +! static void +! f_test_option_not_set(typval_T *argvars, typval_T *rettv UNUSED) +! { +! char_u *name = (char_u *)""; +! +! if (argvars[0].v_type != VAR_STRING) +! EMSG(_(e_invarg)); +! else +! { +! name = get_tv_string_chk(&argvars[0]); +! if (reset_option_was_set(name) == FAIL) +! EMSG2(_(e_invarg2), name); +! } +! } +! +! /* +! * "test_override({name}, {val})" function + */ + static void + f_test_override(typval_T *argvars, typval_T *rettv UNUSED) +*** ../vim-8.1.0385/src/version.c 2018-09-13 19:04:45.437477554 +0200 +--- src/version.c 2018-09-13 20:29:01.432651600 +0200 +*************** +*** 796,797 **** +--- 796,799 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 386, + /**/ + +-- +hundred-and-one symptoms of being an internet addict: +43. You tell the kids they can't use the computer because "Daddy's got work to + do" and you don't even have a job. + + /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ +/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ +\\\ an exciting new programming language -- http://www.Zimbu.org /// + \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |