Hi Marcel,

Can you verify that you are not using as a file descriptor the address of the 
struct "compress_params"?

diff --git a/lib/dpkg/compress.c b/lib/dpkg/compress.c
index 43d4fd063..c92324935 100644
--- a/lib/dpkg/compress.c
+++ b/lib/dpkg/compress.c
@@ -930,7 +930,7 @@ static const struct compressor compressor_lzma = {
 #ifdef WITH_LIBZSTD

 static void
-decompress_zstd(int fd_in, int fd_out, const char *desc)
+decompress_zstd(struct compress_params *params, int fd_in, int fd_out, const 
char *desc)
 {
        size_t const buf_in_size = ZSTD_DStreamInSize();
        void*  const buf_in = m_malloc(buf_in_size);

Regards
Alejandro.

On Fri, 18 Feb 2022 16:20:12 +0100 Marcel Partap <mpar...@gmx.net> wrote:
> […]
> Follow-up: forgot to set up linking with zstd lib in Makefile.am, thanks to 
> Bernardo Bandos for picking that one up. Commits on my zstd-rebased branch.
> The tests keep failing at `dpkg-deb -c pkg-data-zst.deb`, which fails with
> > dpkg-deb (subprocess): ZSTD_decompressStream error : Unknown frame 
> > descriptor
>
> My efforts poking at it with gdb have been fruitless. The file can be 
> unpacked just fine with `ar` and the data.tar.zst is valid and can be 
> uncompressed, too.
>
> Any ideas?
>
> > https://salsa.debian.org/mpartap-guest/dpkg/-/tree/zstd-rebased
> >
> > Best Regards
> > Marcel 😅
>
>
>

Reply via email to