Mercurial > vim
view src/proto/ex_getln.pro @ 18406:fa6efc49d71f v8.1.2197
patch 8.1.2197: ExitPre autocommand may cause accessing freed memory
Commit: https://github.com/vim/vim/commit/34ba06b6e6f94bb46062e6c85dbfdcbb0d255ada
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Oct 20 22:27:10 2019 +0200
patch 8.1.2197: ExitPre autocommand may cause accessing freed memory
Problem: ExitPre autocommand may cause accessing freed memory.
Solution: Check the window pointer is still valid. (closes https://github.com/vim/vim/issues/5093)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 20 Oct 2019 22:30:03 +0200 |
parents | 684a15da9929 |
children | fd95d4dbeb37 |
line wrap: on
line source
/* ex_getln.c */ void cmdline_init(void); char_u *getcmdline(int firstc, long count, int indent, int do_concat); char_u *getcmdline_prompt(int firstc, char_u *prompt, int attr, int xp_context, char_u *xp_arg); int text_locked(void); void text_locked_msg(void); char *get_text_locked_msg(void); int curbuf_locked(void); int allbuf_locked(void); char_u *getexline(int c, void *cookie, int indent, int do_concat); char_u *getexmodeline(int promptc, void *cookie, int indent, int do_concat); int cmdline_overstrike(void); int cmdline_at_end(void); colnr_T cmdline_getvcol_cursor(void); int realloc_cmdbuff(int len); void free_arshape_buf(void); void putcmdline(int c, int shift); void unputcmdline(void); int put_on_cmdline(char_u *str, int len, int redraw); void cmdline_paste_str(char_u *s, int literally); void redrawcmdline(void); void redrawcmdline_ex(int do_compute_cmdrow); void redrawcmd(void); void compute_cmdrow(void); void cursorcmd(void); void gotocmdline(int clr); char_u *vim_strsave_fnameescape(char_u *fname, int shell); void escape_fname(char_u **pp); void tilde_replace(char_u *orig_pat, int num_files, char_u **files); cmdline_info_T *get_cmdline_info(void); void f_getcmdline(typval_T *argvars, typval_T *rettv); void f_getcmdpos(typval_T *argvars, typval_T *rettv); void f_setcmdpos(typval_T *argvars, typval_T *rettv); void f_getcmdtype(typval_T *argvars, typval_T *rettv); int get_cmdline_type(void); int get_cmdline_firstc(void); int get_list_range(char_u **str, int *num1, int *num2); char_u *script_get(exarg_T *eap, char_u *cmd); void get_user_input(typval_T *argvars, typval_T *rettv, int inputdialog, int secret); /* vim: set ft=c : */