To: vim-dev@vim.org Subject: Patch 7.2.144 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit ------------ Patch 7.2.144 Problem: When 't_Co' is set to the value it already had the color scheme is reloaded anyway. Solution: Only load the colorscheme when the t_Co value changes. (Dominique Pelle) Files: src/option.c *** ../vim-7.2.143/src/option.c Wed Mar 4 04:11:56 2009 --- src/option.c Wed Mar 18 12:00:28 2009 *************** *** 6022,6036 **** /* ":set t_Co=0" and ":set t_Co=1" do ":set t_Co=" */ if (varp == &T_CCO) { ! t_colors = atoi((char *)T_CCO); ! if (t_colors <= 1) { ! if (new_value_alloced) ! vim_free(T_CCO); ! T_CCO = empty_option; } - /* We now have a different color setup, initialize it again. */ - init_highlight(TRUE, FALSE); } ttest(FALSE); if (varp == &T_ME) --- 6022,6044 ---- /* ":set t_Co=0" and ":set t_Co=1" do ":set t_Co=" */ if (varp == &T_CCO) { ! int colors = atoi((char *)T_CCO); ! ! /* Only reinitialize colors if t_Co value has really changed to ! * avoid expensive reload of colorscheme if t_Co is set to the ! * same value multiple times. */ ! if (colors != t_colors) { ! t_colors = colors; ! if (t_colors <= 1) ! { ! if (new_value_alloced) ! vim_free(T_CCO); ! T_CCO = empty_option; ! } ! /* We now have a different color setup, initialize it again. */ ! init_highlight(TRUE, FALSE); } } ttest(FALSE); if (varp == &T_ME) *** ../vim-7.2.143/src/version.c Wed Mar 18 12:50:58 2009 --- src/version.c Wed Mar 18 14:16:48 2009 *************** *** 678,679 **** --- 678,681 ---- { /* Add new patch number below this line */ + /**/ + 144, /**/ -- hundred-and-one symptoms of being an internet addict: 235. You start naming your kids Pascal, COBOL, Algol and Fortran. /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ download, build and distribute -- http://www.A-A-P.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///