X-Git-Url: http://git.wpitchoune.net/gitweb/?p=ppastats.git;a=blobdiff_plain;f=src%2Fppastats.c;h=38dbf1608a4fea9c73b83b64fdf353a9ec4dc172;hp=9ce7dee1bccf53d1a7a30ab7841c6baf4728af8e;hb=4f7d6ce1bef70a80070b9b8cd005e1418177ea44;hpb=420bf860b4cc35c49af96c000f6e72a39bbe51fb diff --git a/src/ppastats.c b/src/ppastats.c index 9ce7dee..38dbf16 100644 --- a/src/ppastats.c +++ b/src/ppastats.c @@ -89,6 +89,12 @@ static struct version_stats *get_version_stats(struct package_stats *package, return v; } +static void arch_stats_free(struct arch_stats *arch) +{ + free(arch->name); + free(arch); +} + static struct distro_stats *distro_stats_new(const char *name) { struct distro_stats *d; @@ -102,6 +108,25 @@ static struct distro_stats *distro_stats_new(const char *name) return d; } +static void distro_stats_free(struct distro_stats *distro) +{ + struct arch_stats **archs; + + archs = distro->archs; + if (archs) { + while (*archs) { + arch_stats_free(*archs); + archs++; + } + free(distro->archs); + } + + daily_download_total_list_free(distro->ddts); + + free(distro->name); + free(distro); +} + static struct distro_stats *get_distro_stats(struct version_stats *version, const char *name) { @@ -336,37 +361,15 @@ create_ppa_stats(const char *owner, return ppa; } -static void arch_stats_free(struct arch_stats *arch) -{ - free(arch->name); - free(arch); -} - -static void distro_stats_free(struct distro_stats *distro) -{ - struct arch_stats **archs; - - archs = distro->archs; - if (archs) { - while (*archs) { - arch_stats_free(*archs); - archs++; - } - free(distro->archs); - } - - daily_download_total_list_free(distro->ddts); - - free(distro->name); - free(distro); -} - static void distro_stats_list_free(struct distro_stats **distros) { + struct distro_stats **cur; + if (distros) { - while (*distros) { - distro_stats_free(*distros); - distros++; + cur = distros; + while (*cur) { + distro_stats_free(*cur); + cur++; } free(distros); }