Skip to content

Commit

Permalink
liboping: fix compilation with ncurses 6.3
Browse files Browse the repository at this point in the history
Fix compilation with ncurses 6.3 by adjusting the printf format strings.

Apparently ncurses 6.3 introduced some new formatting tweaks that
broke things.

Fixes #18110

Reference to:
* octo/liboping#62
* octo/liboping#61
* https://salsa.debian.org/debian/liboping/-/blob/debian/debian/patches/fix_HOST_PRINTF_format_string.patch

Signed-off-by: Hannu Nyman <[email protected]>
  • Loading branch information
hnyman authored and Beginner-Go committed Mar 21, 2022
1 parent 19e8f9a commit 6500e06
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 1 deletion.
2 changes: 1 addition & 1 deletion libs/liboping/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk

PKG_NAME:=liboping
PKG_VERSION:=1.10.0
PKG_RELEASE:=2
PKG_RELEASE:=$(AUTORELEASE)
PKG_MAINTAINER:=Jo-Philipp Wich <[email protected]>
PKG_LICENSE:=LGPL-2.1-or-later

Expand Down
30 changes: 30 additions & 0 deletions libs/liboping/patches/05-fix-format-arguments-ncurses63.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
--- a/src/oping.c
+++ b/src/oping.c
@@ -1125,7 +1125,7 @@ static int update_graph_prettyping (ping
wattron (ctx->window, COLOR_PAIR(color));

if (has_utf8())
- mvwprintw (ctx->window, /* y = */ 3, /* x = */ x + 2, symbol);
+ mvwprintw (ctx->window, /* y = */ 3, /* x = */ x + 2, "%s", symbol);
else
mvwaddch (ctx->window, /* y = */ 3, /* x = */ x + 2, symbolc);

@@ -1223,7 +1223,7 @@ static int update_graph_histogram (ping_
mvwaddch (ctx->window, /* y = */ 3, /* x = */ x + 2, ' ');
else if (has_utf8 ())
mvwprintw (ctx->window, /* y = */ 3, /* x = */ x + 2,
- hist_symbols_utf8[index]);
+ "%s", hist_symbols_utf8[index]);
else
mvwaddch (ctx->window, /* y = */ 3, /* x = */ x + 2,
hist_symbols_acs[index] | A_ALTCHARSET);
@@ -1600,8 +1600,7 @@ static void update_host_hook (pingobj_it

HOST_PRINTF ("%zu bytes from %s (%s): icmp_seq=%u ttl=%i ",
data_len, context->host, context->addr,
- sequence, recv_ttl,
- format_qos (recv_qos, recv_qos_str, sizeof (recv_qos_str)));
+ sequence, recv_ttl);
if ((recv_qos != 0) || (opt_send_qos != 0))
{
HOST_PRINTF ("qos=%s ",

0 comments on commit 6500e06

Please sign in to comment.