Mercurial > vim
comparison src/proto/ex_getln.pro @ 14854:3b72808fbb0d v8.1.0439
patch 8.1.0439: recursive use of getcmdline() still not protected
commit https://github.com/vim/vim/commit/438d176e35c16d56ff3bb7a80300197ce5a30c4f
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Sep 30 17:11:48 2018 +0200
patch 8.1.0439: recursive use of getcmdline() still not protected
Problem: Recursive use of getcmdline() still not protected.
Solution: Instead of saving the command buffer when making a call which may
cause recursiveness, save the buffer when actually being called
recursively.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 30 Sep 2018 17:15:08 +0200 |
parents | 32aed0993813 |
children | 16b2f2db6f28 |
comparison
equal
deleted
inserted
replaced
14853:5889d7548ac6 | 14854:3b72808fbb0d |
---|---|
13 colnr_T cmdline_getvcol_cursor(void); | 13 colnr_T cmdline_getvcol_cursor(void); |
14 void free_cmdline_buf(void); | 14 void free_cmdline_buf(void); |
15 void putcmdline(int c, int shift); | 15 void putcmdline(int c, int shift); |
16 void unputcmdline(void); | 16 void unputcmdline(void); |
17 int put_on_cmdline(char_u *str, int len, int redraw); | 17 int put_on_cmdline(char_u *str, int len, int redraw); |
18 char_u *save_cmdline_alloc(void); | |
19 void restore_cmdline_alloc(char_u *p); | |
20 void cmdline_paste_str(char_u *s, int literally); | 18 void cmdline_paste_str(char_u *s, int literally); |
21 void redrawcmdline(void); | 19 void redrawcmdline(void); |
22 void redrawcmdline_ex(int do_compute_cmdrow); | 20 void redrawcmdline_ex(int do_compute_cmdrow); |
23 void redrawcmd(void); | 21 void redrawcmd(void); |
24 void compute_cmdrow(void); | 22 void compute_cmdrow(void); |
52 void ex_history(exarg_T *eap); | 50 void ex_history(exarg_T *eap); |
53 void prepare_viminfo_history(int asklen, int writing); | 51 void prepare_viminfo_history(int asklen, int writing); |
54 int read_viminfo_history(vir_T *virp, int writing); | 52 int read_viminfo_history(vir_T *virp, int writing); |
55 void handle_viminfo_history(garray_T *values, int writing); | 53 void handle_viminfo_history(garray_T *values, int writing); |
56 void finish_viminfo_history(vir_T *virp); | 54 void finish_viminfo_history(vir_T *virp); |
55 void cmdline_init(void); | |
57 void write_viminfo_history(FILE *fp, int merge); | 56 void write_viminfo_history(FILE *fp, int merge); |
58 void cmd_pchar(int c, int offset); | 57 void cmd_pchar(int c, int offset); |
59 int cmd_gchar(int offset); | 58 int cmd_gchar(int offset); |
60 char_u *script_get(exarg_T *eap, char_u *cmd); | 59 char_u *script_get(exarg_T *eap, char_u *cmd); |
61 /* vim: set ft=c : */ | 60 /* vim: set ft=c : */ |