From bc1a5db6cc103f125a3705970d0018fb145aca4a Mon Sep 17 00:00:00 2001 From: Stéphane Campinas Date: Sat, 10 Sep 2016 20:35:47 +0100 Subject: vim-patch:7.4.1547 #5326 Problem: Getting a cterm highlight attribute that is not set results in the string "-1". Solution: Return an empty string. (Taro Muraoka) https://github.com/vim/vim/commit/385111bd86e0b38667879c3e89506ca1ae98e1df --- src/nvim/syntax.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'src/nvim/syntax.c') diff --git a/src/nvim/syntax.c b/src/nvim/syntax.c index c753c6fabd..6fd7603629 100644 --- a/src/nvim/syntax.c +++ b/src/nvim/syntax.c @@ -7001,11 +7001,15 @@ highlight_color ( if (font || sp) return NULL; if (modec == 'c') { - if (fg) + if (fg) { n = HL_TABLE()[id - 1].sg_cterm_fg - 1; - else + } else { n = HL_TABLE()[id - 1].sg_cterm_bg - 1; - sprintf((char *)name, "%d", n); + } + if (n < 0) { + return NULL; + } + snprintf((char *)name, sizeof(name), "%d", n); return name; } /* term doesn't have color */ -- cgit