1 To: vim_dev@googlegroups.com
4 From: Bram Moolenaar <Bram@moolenaar.net>
6 Content-Type: text/plain; charset=UTF-8
7 Content-Transfer-Encoding: 8bit
11 Problem: Continue looping inside FOR_ALL_TAB_WINDOWS even when already done.
12 Solution: Use goto instead of break. (Hirohito Higashi)
13 Files: src/fileio.c, src/globals.h
16 *** ../vim-7.3.436/src/fileio.c 2011-09-02 11:56:15.000000000 +0200
17 --- src/fileio.c 2012-02-11 23:40:23.000000000 +0100
28 /* Remove the window and frame from the tree of frames. */
29 (void)winframe_remove(curwin, &dummy, NULL);
40 /* Remove the window and frame from the tree of frames. */
41 (void)winframe_remove(curwin, &dummy, NULL);
42 *** ../vim-7.3.436/src/globals.h 2012-02-04 23:34:57.000000000 +0100
43 --- src/globals.h 2012-02-11 23:43:45.000000000 +0100
47 EXTERN win_T *prevwin INIT(= NULL); /* previous window */
48 # define W_NEXT(wp) ((wp)->w_next)
49 # define FOR_ALL_WINDOWS(wp) for (wp = firstwin; wp != NULL; wp = wp->w_next)
51 + * When using this macro "break" only breaks out of the inner loop. Use "goto"
52 + * to break out of the tabpage loop.
54 # define FOR_ALL_TAB_WINDOWS(tp, wp) \
55 for ((tp) = first_tabpage; (tp) != NULL; (tp) = (tp)->tp_next) \
56 for ((wp) = ((tp) == curtab) \
57 *** ../vim-7.3.436/src/version.c 2012-02-11 20:44:01.000000000 +0100
58 --- src/version.c 2012-02-11 23:40:47.000000000 +0100
62 { /* Add new patch number below this line */
68 The future isn't what it used to be.
70 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
71 /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
72 \\\ an exciting new programming language -- http://www.Zimbu.org ///
73 \\\ help me help AIDS victims -- http://ICCF-Holland.org ///