X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Foping.c;h=b4999c5c11f7e9aff2a585d02c2a6a25390849c2;hb=8291dce0cd5f40fc849c0c492a42605ccd9246f8;hp=0cfe64672065c0a99dd3a1d2e9ca8bc9bd5763ce;hpb=0e8b1b239fdcf9307a14d57c1620843e86932583;p=liboping.git diff --git a/src/oping.c b/src/oping.c index 0cfe646..b4999c5 100644 --- a/src/oping.c +++ b/src/oping.c @@ -293,6 +293,11 @@ static void clean_history (ping_context_t *ctx) /* {{{ */ memcpy (ctx->history_by_value, ctx->history_by_time, sizeof (ctx->history_by_time)); + /* Remove impossible values */ + for (i = 0; i < ctx->history_size; i++) + if (ctx->history_by_value[i]<0) + ctx->history_by_value[i]=NAN; + /* Sort all RTTs. */ qsort (ctx->history_by_value, ctx->history_size, sizeof (ctx->history_by_value[0]), compare_double); @@ -999,7 +1004,7 @@ static int update_graph_boxplot (ping_context_t *ctx) /* {{{ */ } /* }}} int update_graph_boxplot */ static int update_graph_prettyping (ping_context_t *ctx, /* {{{ */ - double latency, unsigned int sequence) + double latency) { size_t x; size_t x_max; @@ -1046,6 +1051,10 @@ static int update_graph_prettyping (ping_context_t *ctx, /* {{{ */ index = (history_offset + x) % ctx->history_size; latency = ctx->history_by_time[index]; + if (latency < 0) { + continue; + } + if (latency >= 0.0) { double ratio; @@ -1217,12 +1226,6 @@ static int update_stats_from_context (ping_context_t *ctx, pingobj_iter_t *iter) ping_iterator_get_info (iter, PING_INFO_LATENCY, &latency, &buffer_len); - unsigned int sequence = 0; - buffer_len = sizeof (sequence); - ping_iterator_get_info (iter, PING_INFO_SEQUENCE, - &sequence, &buffer_len); - - if ((ctx == NULL) || (ctx->window == NULL)) return (EINVAL); @@ -1258,7 +1261,7 @@ static int update_stats_from_context (ping_context_t *ctx, pingobj_iter_t *iter) } if (opt_show_graph == 1) - update_graph_prettyping (ctx, latency, sequence); + update_graph_prettyping (ctx, latency); else if (opt_show_graph == 2) update_graph_histogram (ctx); else if (opt_show_graph == 3)