diff --git a/src/oping.c b/src/oping.c
index 7fcbb25aab20ea3c05b5e1df407232aa6a7baa38..14f5fd3711016b2269fb84186880f581160e4d0f 100644 (file)
--- a/src/oping.c
+++ b/src/oping.c
@@ -610,6 +610,9 @@ static int update_stats_from_context (ping_context_t *ctx, pingobj_iter_t *iter)
{
double latency = -1.0;
size_t buffer_len = sizeof (latency);
+ int maxx;
+ getmaxyx(ctx->window, maxx, maxx);
+
ping_iterator_get_info (iter, PING_INFO_LATENCY,
&latency, &buffer_len);
@@ -645,7 +648,7 @@ static int update_stats_from_context (ping_context_t *ctx, pingobj_iter_t *iter)
deviation = context_get_stddev (ctx);
mvwprintw (ctx->window, /* y = */ 2, /* x = */ 2,
- "rtt min/avg/max/sdev = %.3f/%.3f/%.3f/%.3f ms\n",
+ "rtt min/avg/max/sdev = %.3f/%.3f/%.3f/%.3f ms",
ctx->latency_min,
average,
ctx->latency_max,
@@ -676,7 +679,8 @@ static int update_stats_from_context (ping_context_t *ctx, pingobj_iter_t *iter)
}
wattron (ctx->window, COLOR_PAIR(color));
mvwprintw (ctx->window,
- /* y = */ 3, /* x = */ 1 + sequence,
+ /* y = */ 3,
+ /* x = */ (1 + sequence) % maxx,
bars[index]);
wattroff (ctx->window, COLOR_PAIR(color));
}
@@ -687,7 +691,8 @@ static int update_stats_from_context (ping_context_t *ctx, pingobj_iter_t *iter)
else {
wattron (ctx->window, COLOR_PAIR(OPING_RED) | A_BOLD);
mvwprintw (ctx->window,
- /* y = */ 3, /* x = */ 1 + sequence,
+ /* y = */ 3,
+ /* x = */ (1 + sequence) % maxx,
"!");
wattroff (ctx->window, COLOR_PAIR(OPING_RED) | A_BOLD);
}