diff options
author | 2020-11-13 10:30:53 +0100 | |
---|---|---|
committer | 2020-11-13 10:30:53 +0100 | |
commit | 4622c79b0a1bad6dd0c741f3d10fbc987e4f565e (patch) | |
tree | bf948a65f463dfcab19484c9ae0b7936f27c0975 /qmerge.c | |
parent | qlop: adapt terminating/exiting logic somewhat (diff) | |
download | portage-utils-4622c79b0a1bad6dd0c741f3d10fbc987e4f565e.tar.gz portage-utils-4622c79b0a1bad6dd0c741f3d10fbc987e4f565e.tar.bz2 portage-utils-4622c79b0a1bad6dd0c741f3d10fbc987e4f565e.zip |
qmerge: don't call zstd with --long=31 on 32-bits platforms
32-bits recent versions of zstd do not grok this argument, so just drop
it for those platforms
Bug: https://bugs.gentoo.org/754102
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
Diffstat (limited to 'qmerge.c')
-rw-r--r-- | qmerge.c | 11 |
1 files changed, 10 insertions, 1 deletions
@@ -1191,8 +1191,17 @@ pkg_merge(int level, const depend_atom *atom, const struct pkg_t *pkg) * --long=xx where xx>27. The option is "safe" in the sense * that not more memory is allocated than what is really * needed to decompress the file. See - * https://bugs.gentoo.org/show_bug.cgi?id=634980 */ + * https://bugs.gentoo.org/show_bug.cgi?id=634980, + * however, on 32-bits arches this yields an parameter + * out of bound error: + * https://bugs.gentoo.org/show_bug.cgi?id=710444 + * https://bugs.gentoo.org/show_bug.cgi?id=754102 + * so only do this on 64-bits systems */ +#if SIZEOF_SIZE_T >= 8 compr = "zstd --long=31 -dc"; +#else + compr = "zstd -dc"; +#endif /* If really tar -I would be used we would have to quote: * compr = "I \"zstd --long=31\""; * But actually we use a pipe (see below) */ |