X-Git-Url: http://git.wpitchoune.net/gitweb/?a=blobdiff_plain;f=src%2Fppastats.c;h=39b2d874daa7b740b1e0dd4306654defc8ac07b8;hb=HEAD;hp=c1c18d86e4de1df588f3370cf80e840fac3afbce;hpb=d9f38d560ff128b9e20f254bcb858b18788fd561;p=ppastats.git diff --git a/src/ppastats.c b/src/ppastats.c index c1c18d8..39b2d87 100644 --- a/src/ppastats.c +++ b/src/ppastats.c @@ -147,6 +147,20 @@ static struct package_stats *get_package_stats(struct ppa_stats *stats, return p; } +static struct version_stats *version_stats_new(const char *version) +{ + struct version_stats *v; + + v = malloc(sizeof(struct version_stats)); + v->version = strdup(version); + v->distros = NULL; + v->download_count = 0; + v->daily_download_totals = NULL; + v->date_created = 0; + + return v; +} + static struct version_stats *get_version_stats(struct package_stats *package, const char *version) { @@ -162,11 +176,7 @@ static struct version_stats *get_version_stats(struct package_stats *package, cur++; } - v = malloc(sizeof(struct version_stats)); - v->version = strdup(version); - v->distros = NULL; - v->download_count = 0; - v->daily_download_totals = NULL; + v = version_stats_new(version); tmp = (struct version_stats **)list_add((void **)package->versions, v); @@ -358,7 +368,8 @@ create_ppa_stats(const char *owner, for (h_cur = history; *h_cur; ++h_cur) { h = *h_cur; - totals = get_daily_download_totals(h->self_link); + totals = get_daily_download_totals(h->self_link, + h->date_created); if (!totals) { log_err(_("Failed to retrieve download totals for %s"), h->self_link); @@ -386,6 +397,8 @@ create_ppa_stats(const char *owner, pkg->daily_download_totals = tmp; version = get_version_stats(pkg, pkg_version); + version->date_created = h->date_created; + version->download_count += count; tmp = add_totals(version->daily_download_totals, totals); if (version->daily_download_totals != tmp)