summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAndrew Gregory <andrew.gregory.8@gmail.com>2021-04-28 04:11:27 +0200
committerAllan McRae <allan@archlinux.org>2021-05-01 04:08:14 +0200
commit72238aa046b8a8de1c7b9110726986c7538023b5 (patch)
treee5cb6ee1d6f489cd06fae2e87aec9cad5e9cd16a /src
parenteb1a63a516cb3791d0084b0d05b074c963aa01e9 (diff)
downloadpacman-72238aa046b8a8de1c7b9110726986c7538023b5.tar.gz
pacman-72238aa046b8a8de1c7b9110726986c7538023b5.tar.xz
call download progress callback for signatures
pacman may not care about them, but other front-ends do. Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Diffstat (limited to 'src')
-rw-r--r--src/pacman/callback.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/pacman/callback.c b/src/pacman/callback.c
index c3563af3..ae7e1bed 100644
--- a/src/pacman/callback.c
+++ b/src/pacman/callback.c
@@ -1070,10 +1070,22 @@ static void dload_complete_event(const char *filename, alpm_download_event_compl
}
}
+static int strendswith(const char *haystack, const char *needle)
+{
+ size_t hlen = strlen(haystack), nlen = strlen(needle);
+ return hlen >= nlen && strcmp(haystack + hlen - nlen, needle) == 0;
+}
+
/* Callback to handle display of download progress */
void cb_download(void *ctx, const char *filename, alpm_download_event_type_t event, void *data)
{
(void)ctx;
+
+ /* do not print signature files progress bar */
+ if(strendswith(filename, ".sig")) {
+ return;
+ }
+
if(event == ALPM_DOWNLOAD_INIT) {
dload_init_event(filename, data);
} else if(event == ALPM_DOWNLOAD_PROGRESS) {