Hi,

I stumbled upon a bug in the archive module on BaseX 8.0.
The zip files created by the archive module are not valid.

```
let $found := file:list("/tmp/test/media/")
return
file:write-binary("/tmp/test.zip",
archive:create(
  $found,
  $found ! file:read-binary( "/tmp/test/media/" || .)
, map { "format" : "zip", "algorithm" : "deflate"}))
```

The resultting zip file is invalid.
Trying to unzip in cli returns:
```
Archive:  test.zip
  End-of-central-directory signature not found.  Either this file is not
  a zipfile, or it constitutes one disk of a multi-part archive.  In the
  latter case the central directory and zipfile comment will be found on
  the last disk(s) of this archive.
unzip:  cannot find zipfile directory in one of test.zip or
test.zip.zip, and cannot find test.zip.ZIP, period.

```
The same code works in BaseX7.9

Cheers,
Alex

Reply via email to