]> granicus.if.org Git - php/commitdiff
MF53: workaround for Bug #46147 for PHP < 5.2.7
authorGreg Beaver <cellog@php.net>
Mon, 22 Sep 2008 01:40:51 +0000 (01:40 +0000)
committerGreg Beaver <cellog@php.net>
Mon, 22 Sep 2008 01:40:51 +0000 (01:40 +0000)
ext/phar/zip.c

index a685d995da86b796cfe4623b894b0721116093ea..221a806f559c49004d370df004470130fd8f992d 100644 (file)
@@ -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;