From bee4703eb8344c7821735ab76418ffb32c3b2952 Mon Sep 17 00:00:00 2001 From: zawz Date: Mon, 24 Aug 2020 14:12:36 +0200 Subject: [PATCH] Fix version padding --- src/fetch.cpp | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/fetch.cpp b/src/fetch.cpp index d7b868e..fd11f57 100644 --- a/src/fetch.cpp +++ b/src/fetch.cpp @@ -116,8 +116,12 @@ int import_sizes(repo_update* ru, const char* ext_size_command, const char* loc_ for(uint32_t i=0; ipackages[i]); + + // sizes import if(ext_size_command!=NULL) get_ext_sizes(pkg, ext_size_command); if(loc_size_command!=NULL) get_loc_size(pkg, loc_size_command); + + // has new version if(pkg->current_version != "" && pkg->new_version != "" && pkg->new_version != pkg->current_version) { pkg->has_update=true; @@ -125,14 +129,18 @@ int import_sizes(repo_update* ru, const char* ext_size_command, const char* loc_ } else pkg->has_update=false; + + // net size pkg->net_size = (int64_t) pkg->new_install_size - (int64_t) pkg->current_install_size; } + + // post compute for(auto pkg : ru->packages) { // string lengths ru->name_max_length = std::max(ru->name_max_length, (uint32_t) pkg.name.size()); - ru->vnew_max_length = std::max(ru->vnew_max_length, (uint32_t) pkg.current_version.size()); - ru->vcur_max_length = std::max(ru->vcur_max_length, (uint32_t) pkg.new_version.size()); + ru->vnew_max_length = std::max(ru->vnew_max_length, (uint32_t) pkg.new_version.size()); + ru->vcur_max_length = std::max(ru->vcur_max_length, (uint32_t) pkg.current_version.size()); // biggest sizes ru->max_install_size = std::max(ru->max_install_size, pkg.has_update ? pkg.new_install_size : pkg.current_install_size); @@ -144,8 +152,12 @@ int import_sizes(repo_update* ru, const char* ext_size_command, const char* loc_ ru->new_install_size += pkg.has_update ? pkg.new_install_size : pkg.current_install_size; ru->current_install_size += pkg.current_install_size; + // count updates if(pkg.has_update) ru->n_updates++; } + + // global net size ru->net_size = (int64_t) ru->new_install_size - (int64_t) ru->current_install_size; + return 0; }