sfeed

simple feed reader - forked from git.codemadness.org/sfeed
git clone git://src.gearsix.net/sfeed
Log | Files | Refs | Atom | README | LICENSE

commit 2d7e4573fc6b9ce6b34f97e673a469d07763ce90
parent 2542a7773711da8d6cea85a007bcc5a2e2b2ffb0
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date:   Sat, 19 Feb 2022 13:57:48 +0100

fix a compiler warning with (Net)BSD curses

Some curses implementations have tparm(char *) (BSD and older ncurses), some
have tparm(const char *).

The older POSIX specification had: tparm(char *):
https://pubs.opengroup.org/onlinepubs/7908799/xcurses/term.h.html

Just cast it to char *. The terminfo variables are defined elsewhere so it
should be safe.

Also remove an unnecesary cast in minicurses.

Hopefully this satisfies all curses variants and versions now.

Diffstat:
Mminicurses.h | 30+++++++++++++++---------------
Msfeed_curses.c | 7++++---
2 files changed, 19 insertions(+), 18 deletions(-)

diff --git a/minicurses.h b/minicurses.h @@ -3,20 +3,20 @@ #undef OK #define OK (0) -char *clr_eol = "\x1b[K"; -char *clear_screen = "\x1b[H\x1b[2J"; -char *cursor_address = "\x1b[%ld;%ldH"; -char *cursor_normal = "\x1b[?25h"; /* DECTCEM (in)Visible cursor */ -char *cursor_invisible = "\x1b[?25l"; /* DECTCEM (in)Visible cursor */ -char *eat_newline_glitch = (void *)1; -char *enter_ca_mode = "\x1b[?1049h"; /* smcup */ -char *exit_ca_mode = "\x1b[?1049l"; /* rmcup */ -char *save_cursor = "\x1b""7"; -char *restore_cursor = "\x1b""8"; -char *exit_attribute_mode = "\x1b[0m"; -char *enter_bold_mode = "\x1b[1m"; -char *enter_dim_mode = "\x1b[2m"; -char *enter_reverse_mode = "\x1b[7m"; +const char *clr_eol = "\x1b[K"; +const char *clear_screen = "\x1b[H\x1b[2J"; +const char *cursor_address = "\x1b[%ld;%ldH"; +const char *cursor_normal = "\x1b[?25h"; /* DECTCEM (in)Visible cursor */ +const char *cursor_invisible = "\x1b[?25l"; /* DECTCEM (in)Visible cursor */ +const char *eat_newline_glitch = (void *)1; +const char *enter_ca_mode = "\x1b[?1049h"; /* smcup */ +const char *exit_ca_mode = "\x1b[?1049l"; /* rmcup */ +const char *save_cursor = "\x1b""7"; +const char *restore_cursor = "\x1b""8"; +const char *exit_attribute_mode = "\x1b[0m"; +const char *enter_bold_mode = "\x1b[1m"; +const char *enter_dim_mode = "\x1b[2m"; +const char *enter_reverse_mode = "\x1b[7m"; int setupterm(char *term, int fildes, int *errret) @@ -34,5 +34,5 @@ tparm(char *s, long p1, long p2, ...) return buf; } - return (char *)s; + return s; } diff --git a/sfeed_curses.c b/sfeed_curses.c @@ -265,14 +265,15 @@ estrdup(const char *s) return p; } -/* Wrapper for tparm which allows NULL parameter for str. */ +/* Wrapper for tparm() which allows NULL parameter for str. */ char * -tparmnull(char *str, long p1, long p2, long p3, long p4, long p5, long p6, +tparmnull(const char *str, long p1, long p2, long p3, long p4, long p5, long p6, long p7, long p8, long p9) { if (!str) return NULL; - return tparm(str, p1, p2, p3, p4, p5, p6, p7, p8, p9); + /* some tparm() implementations have char *, some have const char * */ + return tparm((char *)str, p1, p2, p3, p4, p5, p6, p7, p8, p9); } /* Counts column width of character string. */