diff options
Diffstat (limited to 'ext')
-rw-r--r-- | ext/phar/zip.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/ext/phar/zip.c b/ext/phar/zip.c index a685d995da..221a806f55 100644 --- a/ext/phar/zip.c +++ b/ext/phar/zip.c @@ -484,6 +484,10 @@ foundit: /* construct actual offset to file start - local extra_len can be different from central extra_len */ entry.offset = entry.offset_abs = sizeof(local) + entry.header_offset + PHAR_GET_16(local.filename_len) + PHAR_GET_16(local.extra_len); +#if PHP_VERSION_ID < 50207 + /* work around Bug #46147 */ + fp->writepos = fp->readpos = 0; +#endif php_stream_seek(fp, entry.offset, SEEK_SET); mydata->alias_len = entry.uncompressed_filesize; |