diff options
author | Olivier Brunel <jjk@jjacky.com> | 2018-10-17 17:11:01 +0200 |
---|---|---|
committer | Andrew Gregory <andrew.gregory.8@gmail.com> | 2018-10-18 02:28:32 +0200 |
commit | ffde85aadfe0e08fb710102d0a547335e9d1a200 (patch) | |
tree | 9232031a2a5ecab5338de2efdafa8b078e47dea1 /lib/libalpm | |
parent | d96d0ffe7c88d9521a9e6cdd65939e9a20733cdf (diff) | |
download | pacman-ffde85aadfe0e08fb710102d0a547335e9d1a200.tar.gz pacman-ffde85aadfe0e08fb710102d0a547335e9d1a200.tar.xz |
alpm: Fix SIGINT handling re: aborting download
Upon receiving SIGINT a flag is set to abort the (curl) download.
However, since it was never reset/initialized, if a front-end doesn't
actually exit on SIGINT, and later tries any operation that needs to
perform a new download, said download would always get aborted right
away due to the flag not having been reset.
Diffstat (limited to 'lib/libalpm')
-rw-r--r-- | lib/libalpm/dload.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/libalpm/dload.c b/lib/libalpm/dload.c index 00993910..36ae4ee1 100644 --- a/lib/libalpm/dload.c +++ b/lib/libalpm/dload.c @@ -431,6 +431,7 @@ static int curl_download_internal(struct dload_payload *payload, /* Ignore any SIGPIPE signals. With libcurl, these shouldn't be happening, * but better safe than sorry. Store the old signal handler first. */ mask_signal(SIGPIPE, SIG_IGN, &orig_sig_pipe); + dload_interrupted = 0; mask_signal(SIGINT, &inthandler, &orig_sig_int); /* perform transfer */ |