diff options
author | Nicolas Hillegeer <nicolas@hillegeer.com> | 2014-02-27 18:57:17 +0100 |
---|---|---|
committer | Thiago de Arruda <tpadilha84@gmail.com> | 2014-02-28 11:48:43 -0300 |
commit | 3f29a02166878bdbf32b0d638aa0e0c9d83a73cc (patch) | |
tree | a1f932447c6a657fff86b1a9823f37db282f2801 /src/term.c | |
parent | 6eece5895e4f0c147ef21ebb4d170a54f8694182 (diff) | |
download | rneovim-3f29a02166878bdbf32b0d638aa0e0c9d83a73cc.tar.gz rneovim-3f29a02166878bdbf32b0d638aa0e0c9d83a73cc.tar.bz2 rneovim-3f29a02166878bdbf32b0d638aa0e0c9d83a73cc.zip |
MAKE: ask gnulikes to warn and be pedantic + fixes
It seems clang 3.4 thinks the codebase is in fantastic shape and gcc 4.9.0
has only minor niggles, which I fixed:
- fix uninitialized member warning:
In DEBUG mode the expr member doesn't get properly initialized to NULL.
- fix warnings about directive inside of macro's:
On some platforms/compilers, sprintf is a macro. Putting macro directives
inside of a macro is unportable and gcc 4.9 warns about that.
- fix signed vs. unsigned comparison warning:
The in-memory table will luckily not even come close to the limits imposed
by ssize_t. If it ever reaches that, we've got bigger problems.
Diffstat (limited to 'src/term.c')
-rw-r--r-- | src/term.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/term.c b/src/term.c index 5ce3e3ee96..fad1401c0e 100644 --- a/src/term.c +++ b/src/term.c @@ -2225,12 +2225,14 @@ static void term_color(char_u *s, int n) && (STRCMP(s + i + 1, "%p1%dm") == 0 || STRCMP(s + i + 1, "%dm") == 0) && (s[i] == '3' || s[i] == '4')) { - sprintf(buf, + const char *fmt = #ifdef TERMINFO - "%s%s%%p1%%dm", + "%s%s%%p1%%dm"; #else - "%s%s%%dm", + "%s%s%%dm"; #endif + sprintf(buf, + fmt, i == 2 ? IF_EB("\033[", ESC_STR "[") : "\233", s[i] == '3' ? (n >= 16 ? "38;5;" : "9") : (n >= 16 ? "48;5;" : "10")); |