diff options
author | Oliver Smith <ollieparanoid@bitmessage.ch> | 2018-04-11 20:19:35 +0200 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2018-10-03 08:33:52 +0000 |
commit | 07d9f3bf6b97d7c8543a911a2ea02db4645c82e2 (patch) | |
tree | b19b16462b1cfc87da68414de57bd296ecaa7fd9 /abuild-rmtemp.c | |
parent | 3d0080de5ee61170542004e6172460d5feb73382 (diff) | |
download | abuild-07d9f3bf6b97d7c8543a911a2ea02db4645c82e2.tar.gz abuild-07d9f3bf6b97d7c8543a911a2ea02db4645c82e2.tar.bz2 abuild-07d9f3bf6b97d7c8543a911a2ea02db4645c82e2.tar.xz abuild-07d9f3bf6b97d7c8543a911a2ea02db4645c82e2.zip |
Fix: incomplete partfile gets renamed to distfile
Abuild-fetch uses curl (fallback to wget) to download files. They are
saved with a ".part" extension first, so they can be resumed if
necessary. When the download is through, the ".part" extension gets
removed. However, when the server does not support resume of downloads
(e.g. GitHub's on the fly generated tarballs), then the ".part"
extension got removed anyway. Abuild aborts in that case. But when
running a third time, the distfile exists and it is assumed that this
is the full download.
Changes:
* abuild-fetch:
* Only remove the ".part" extension, when curl/wget exit with 0
* Pass the exit code from curl/wget as exit code of abuild-fetch
* Wherever abuild-fetch would return an exit code on its own, the
codes have been changed to be > 200 (so they don't collide with
curl's as of now 92 exit codes)
* Remove undocumented feature of downloading multiple source URLs at
a time. This doesn't match with the usage description, was not used
in abuild at all and it would have made it impossible to pass the
exit code.
* abuild:
* After downloading, when curl is installed and abuild-fetch has
33 as exit code (curl's HTTP range error), then delete the partfile
and try the download again.
Diffstat (limited to 'abuild-rmtemp.c')
0 files changed, 0 insertions, 0 deletions