Mercurial > vim
changeset 9054:f129fd3ebd98 v7.4.1812
commit https://github.com/vim/vim/commit/187147aedd588070d0676664d5076d046644094e
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun May 1 13:09:57 2016 +0200
patch 7.4.1812
Problem: Failure on startup with Athena and Motif.
Solution: Check for INVALCOLOR. (Kazunobu Kuriyama)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 01 May 2016 13:15:05 +0200 |
parents | 984b355f1217 |
children | 8410027b1681 |
files | src/syntax.c src/version.c src/vim.h |
diffstat | 3 files changed, 14 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/syntax.c +++ b/src/syntax.c @@ -9261,8 +9261,8 @@ set_hl_attr( at_en.ae_u.cterm.fg_color = sgp->sg_cterm_fg; at_en.ae_u.cterm.bg_color = sgp->sg_cterm_bg; # ifdef FEAT_TERMGUICOLORS - at_en.ae_u.cterm.fg_rgb = GUI_MCH_GET_RGB(sgp->sg_gui_fg); - at_en.ae_u.cterm.bg_rgb = GUI_MCH_GET_RGB(sgp->sg_gui_bg); + at_en.ae_u.cterm.fg_rgb = GUI_MCH_GET_RGB2(sgp->sg_gui_fg); + at_en.ae_u.cterm.bg_rgb = GUI_MCH_GET_RGB2(sgp->sg_gui_bg); # endif sgp->sg_cterm_attr = get_attr_entry(&cterm_attr_table, &at_en); }
--- a/src/version.c +++ b/src/version.c @@ -754,6 +754,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1812, +/**/ 1811, /**/ 1810,
--- a/src/vim.h +++ b/src/vim.h @@ -1561,14 +1561,23 @@ typedef UINT32_TYPEDEF UINT32_T; #ifdef FEAT_GUI # ifdef FEAT_TERMGUICOLORS # define GUI_FUNCTION(f) (gui.in_use ? gui_##f : termgui_##f) +# define GUI_FUNCTION2(f, pixel) (gui.in_use \ + ? ((pixel) != INVALCOLOR \ + ? gui_##f((pixel)) \ + : (long_u)INVALCOLOR) \ + : termgui_##f((pixel))) # define USE_24BIT (gui.in_use || p_tgc) # else # define GUI_FUNCTION(f) gui_##f +# define GUI_FUNCTION2(f,pixel) ((pixel) != INVALCOLOR \ + ? gui_##f((pixel)) \ + : (long_u)INVALCOLOR) # define USE_24BIT gui.in_use # endif #else # ifdef FEAT_TERMGUICOLORS # define GUI_FUNCTION(f) termgui_##f +# define GUI_FUNCTION2(f, pixel) termgui_##f((pixel)) # define USE_24BIT p_tgc # endif #endif @@ -1579,6 +1588,7 @@ typedef UINT32_TYPEDEF UINT32_T; #endif #ifdef GUI_FUNCTION # define GUI_MCH_GET_RGB GUI_FUNCTION(mch_get_rgb) +# define GUI_MCH_GET_RGB2(pixel) GUI_FUNCTION2(mch_get_rgb, (pixel)) # define GUI_MCH_GET_COLOR GUI_FUNCTION(mch_get_color) # define GUI_GET_COLOR GUI_FUNCTION(get_color) #endif