]> git.pld-linux.org Git - packages/vim.git/blame - 7.3.472
- up to 7.3.600
[packages/vim.git] / 7.3.472
CommitLineData
03d4279c
AM
1To: vim_dev@googlegroups.com
2Subject: Patch 7.3.472
3Fcc: outbox
4From: Bram Moolenaar <Bram@moolenaar.net>
5Mime-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8------------
9
10Patch 7.3.472
11Problem: Crash when using ":redraw" in a BufEnter autocommand and
12 switching to another tab. (驼峰)
13Solution: Move triggering the the autocommands to after correcting the
14 option values. Also check the row value to be out of bounds.
15 (Christian Brabandt, Sergey Khorev)
16Files: src/screen.c, src/window.c
17
18
19*** ../vim-7.3.471/src/screen.c 2012-02-04 23:34:57.000000000 +0100
20--- src/screen.c 2012-03-16 18:59:20.000000000 +0100
21***************
22*** 5371,5376 ****
23--- 5371,5382 ----
24 # define CHAR_CELLS 1
25 #endif
26
27+ /* Check for illegal row and col, just in case. */
28+ if (row >= Rows)
29+ row = Rows - 1;
30+ if (endcol > Columns)
31+ endcol = Columns;
32+
33 # ifdef FEAT_CLIPBOARD
34 clip_may_clear_selection(row, row);
35 # endif
36*** ../vim-7.3.471/src/window.c 2012-02-22 14:58:24.000000000 +0100
37--- src/window.c 2012-03-16 18:43:01.000000000 +0100
38***************
39*** 3676,3688 ****
40 win_enter_ext(tp->tp_curwin, FALSE, TRUE);
41 prevwin = next_prevwin;
42
43- #ifdef FEAT_AUTOCMD
44- apply_autocmds(EVENT_TABENTER, NULL, NULL, FALSE, curbuf);
45-
46- if (old_curbuf != curbuf)
47- apply_autocmds(EVENT_BUFENTER, NULL, NULL, FALSE, curbuf);
48- #endif
49-
50 last_status(FALSE); /* status line may appear or disappear */
51 (void)win_comp_pos(); /* recompute w_winrow for all windows */
52 must_redraw = CLEAR; /* need to redraw everything */
53--- 3676,3681 ----
54***************
55*** 3712,3717 ****
56--- 3705,3718 ----
57 gui_may_update_scrollbars();
58 #endif
59
60+ #ifdef FEAT_AUTOCMD
61+ /* Apply autocommands after updating the display, when 'rows' and
62+ * 'columns' have been set correctly. */
63+ apply_autocmds(EVENT_TABENTER, NULL, NULL, FALSE, curbuf);
64+ if (old_curbuf != curbuf)
65+ apply_autocmds(EVENT_BUFENTER, NULL, NULL, FALSE, curbuf);
66+ #endif
67+
68 redraw_all_later(CLEAR);
69 }
70
71*** ../vim-7.3.471/src/version.c 2012-03-16 14:32:10.000000000 +0100
72--- src/version.c 2012-03-16 19:02:53.000000000 +0100
73***************
74*** 716,717 ****
75--- 716,719 ----
76 { /* Add new patch number below this line */
77+ /**/
78+ 472,
79 /**/
80
81--
82hundred-and-one symptoms of being an internet addict:
83200. You really believe in the concept of a "paperless" office.
84
85 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
86/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
87\\\ an exciting new programming language -- http://www.Zimbu.org ///
88 \\\ help me help AIDS victims -- http://ICCF-Holland.org ///
This page took 0.055111 seconds and 4 git commands to generate.