From 4e6f095c4127cb95841defd33ee6f8729f7f4865 Mon Sep 17 00:00:00 2001
From: Richard Nyberg <rnyberg@murmeldjur.se>
Date: Mon, 20 Mar 2006 21:45:02 +0000
Subject: [PATCH] Cut off decimals after the first tenth percent so printf
 doesn't round the percentage upwards. Ie. Display 99.9%, not 100.0%, even if
 we have 99.98% of the content.

---
 cli/btcli.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/cli/btcli.c b/cli/btcli.c
index 00c747f..95ae487 100644
--- a/cli/btcli.c
+++ b/cli/btcli.c
@@ -7,6 +7,7 @@
 #include <getopt.h>
 #include <inttypes.h>
 #include <limits.h>
+#include <math.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -64,13 +65,13 @@ print_stat(struct tpstat *ts)
 {
     printf("%c %5.1f%% %6.1fM %7.2fkB/s %6.1fM %7.2fkB/s %4u %5.1f%%",
         state_char(ts),
-        100.0 * ts->content_got / ts->content_size,
+        floor(1000.0 * ts->content_got / ts->content_size) / 10,
         (double)ts->downloaded / (1 << 20),
         (double)ts->rate_down / (20 << 10),
         (double)ts->uploaded / (1 << 20),
         (double)ts->rate_up / (20 << 10),
         ts->peers,
-        100.0 * ts->pieces_seen / ts->torrent_pieces);
+        floor(1000.0 * ts->pieces_seen / ts->torrent_pieces) / 10);
     if (ts->tr_errors > 0)
         printf(" E%u", ts->tr_errors);
     printf("\n");