Web lists-archives.com

PHP zip extension broken with libzip

This has been a long standing bug, but i just recently sought out the cause.

The following snippets fails in currently packaged php:
$zip = new ZipArchive;
$zip->open("test.zip", ZipArchive::CREATE | ZipArchive::OVERWRITE);
$zip->addFromString("foo.txt", "foo");

With a warning:
Warning: ZipArchive::close(): Renaming temporary file failed: Illegal
seek in /tmp/zip.php on line 5

It appears that the problem lies in libzip. If the extension is built
without `--with-libzip=/usr`, the error doesn't emerge. When libzip is
not available, extension is built with a bundled zip implementation.

To test, navigating into `ext/zip` in php source.

Test with bundled library:
phpize && LDFLAGS='-lpcre' ./configure && make test

Test with libzip:
phpize && LDFLAGS='-lpcre' ./configure --with-libzip=/usr && make test

Latter produces 19 failed tests.

Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple