diff --git a/src/pacman/callback.c b/src/pacman/callback.c index 7f72b84..051a65a 100644 --- a/src/pacman/callback.c +++ b/src/pacman/callback.c @@ -18,6 +18,8 @@ * along with this program. If not, see . */ +#include +#include #include #include #include @@ -189,7 +191,7 @@ void cb_event(alpm_event_t *event) alpm_event_hook_run_t *e = &event->hook_run; int digits = number_length(e->total); printf("(%*zu/%*zu) %s\n", digits, e->position, - digits, e->total, + digits, e->total, e->desc ? e->desc : e->name); } break; @@ -747,6 +749,13 @@ void cb_dl_progress(const char *filename, off_t file_xfered, off_t file_total) /* return if the calling interval was too short */ return; } + if(((double)(xfered - xfered_last) / (timediff / 1000.0)) < 0) + fprintf(stderr, "xfered_last: %ld; xfered: %ld;\n" + "file_xfered: %ld; list_xfered: %ld;\n" + "timediff: %"PRId64"\n", + xfered_last, xfered, + file_xfered, list_xfered, + timediff); rate = (double)(xfered - xfered_last) / (timediff / 1000.0); /* average rate to reduce jumpiness */ rate = (rate + 2 * rate_last) / 3;