diff options
Diffstat (limited to 'data/vim/patches/8.1.0177')
-rw-r--r-- | data/vim/patches/8.1.0177 | 146 |
1 files changed, 0 insertions, 146 deletions
diff --git a/data/vim/patches/8.1.0177 b/data/vim/patches/8.1.0177 deleted file mode 100644 index 7df24e759..000000000 --- a/data/vim/patches/8.1.0177 +++ /dev/null @@ -1,146 +0,0 @@ -To: vim_dev@googlegroups.com -Subject: Patch 8.1.0177 -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.0177 -Problem: Defining function in sandbox is inconsistent, cannot use :function - but can define a lambda. -Solution: Allow defining a function in the sandbox, but also use the sandbox - when executing it. (closes #3182) -Files: src/userfunc.c, src/ex_cmds.h - - -*** ../vim-8.1.0176/src/userfunc.c Sun Jul 8 17:18:58 2018 ---- src/userfunc.c Tue Jul 10 19:30:35 2018 -*************** -*** 14,26 **** - #include "vim.h" - - #if defined(FEAT_EVAL) || defined(PROTO) -! /* function flags */ -! #define FC_ABORT 0x01 /* abort function on error */ -! #define FC_RANGE 0x02 /* function accepts range */ -! #define FC_DICT 0x04 /* Dict function, uses "self" */ -! #define FC_CLOSURE 0x08 /* closure, uses outer scope variables */ -! #define FC_DELETED 0x10 /* :delfunction used while uf_refcount > 0 */ -! #define FC_REMOVED 0x20 /* function redefined while uf_refcount > 0 */ - - /* From user function to hashitem and back. */ - #define UF2HIKEY(fp) ((fp)->uf_name) ---- 14,27 ---- - #include "vim.h" - - #if defined(FEAT_EVAL) || defined(PROTO) -! // flags used in uf_flags -! #define FC_ABORT 0x01 // abort function on error -! #define FC_RANGE 0x02 // function accepts range -! #define FC_DICT 0x04 // Dict function, uses "self" -! #define FC_CLOSURE 0x08 // closure, uses outer scope variables -! #define FC_DELETED 0x10 // :delfunction used while uf_refcount > 0 -! #define FC_REMOVED 0x20 // function redefined while uf_refcount > 0 -! #define FC_SANDBOX 0x40 // function defined in the sandbox - - /* From user function to hashitem and back. */ - #define UF2HIKEY(fp) ((fp)->uf_name) -*************** -*** 296,301 **** ---- 297,304 ---- - if (prof_def_func()) - func_do_profile(fp); - #endif -+ if (sandbox) -+ flags |= FC_SANDBOX; - fp->uf_varargs = TRUE; - fp->uf_flags = flags; - fp->uf_calls = 0; -*************** -*** 688,693 **** ---- 691,697 ---- - char_u *save_sourcing_name; - linenr_T save_sourcing_lnum; - scid_T save_current_SID; -+ int using_sandbox = FALSE; - funccall_T *fc; - int save_did_emsg; - static int depth = 0; -*************** -*** 854,859 **** ---- 858,870 ---- - save_sourcing_name = sourcing_name; - save_sourcing_lnum = sourcing_lnum; - sourcing_lnum = 1; -+ -+ if (fp->uf_flags & FC_SANDBOX) -+ { -+ using_sandbox = TRUE; -+ ++sandbox; -+ } -+ - /* need space for function name + ("function " + 3) or "[number]" */ - len = (save_sourcing_name == NULL ? 0 : STRLEN(save_sourcing_name)) - + STRLEN(fp->uf_name) + 20; -*************** -*** 1020,1025 **** ---- 1031,1038 ---- - if (do_profiling == PROF_YES) - script_prof_restore(&wait_start); - #endif -+ if (using_sandbox) -+ --sandbox; - - if (p_verbose >= 12 && sourcing_name != NULL) - { -*************** -*** 2429,2434 **** ---- 2442,2449 ---- - func_do_profile(fp); - #endif - fp->uf_varargs = varargs; -+ if (sandbox) -+ flags |= FC_SANDBOX; - fp->uf_flags = flags; - fp->uf_calls = 0; - fp->uf_script_ID = current_SID; -*** ../vim-8.1.0176/src/ex_cmds.h Tue Apr 3 22:07:59 2018 ---- src/ex_cmds.h Tue Jul 10 19:17:05 2018 -*************** -*** 584,590 **** - EXTRA|NOTRLCOM|SBOXOK|CMDWIN, - ADDR_LINES), - EX(CMD_function, "function", ex_function, -! EXTRA|BANG|CMDWIN, - ADDR_LINES), - EX(CMD_global, "global", ex_global, - RANGE|WHOLEFOLD|BANG|EXTRA|DFLALL|SBOXOK|CMDWIN, ---- 584,590 ---- - EXTRA|NOTRLCOM|SBOXOK|CMDWIN, - ADDR_LINES), - EX(CMD_function, "function", ex_function, -! EXTRA|BANG|SBOXOK|CMDWIN, - ADDR_LINES), - EX(CMD_global, "global", ex_global, - RANGE|WHOLEFOLD|BANG|EXTRA|DFLALL|SBOXOK|CMDWIN, -*** ../vim-8.1.0176/src/version.c Tue Jul 10 17:33:41 2018 ---- src/version.c Tue Jul 10 19:38:37 2018 -*************** -*** 791,792 **** ---- 791,794 ---- - { /* Add new patch number below this line */ -+ /**/ -+ 177, - /**/ - --- -hundred-and-one symptoms of being an internet addict: -224. You set up your own Web page. You set up a Web page for each - of your kids... and your pets. - - /// 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 /// |