Check for "ZIP_ER_OK" return value on ZipArchive. See #12637
git-svn-id: https://develop.svn.wordpress.org/trunk@14346 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
parent
4a9eb3d31f
commit
6b49c70b09
|
@ -576,7 +576,8 @@ function _unzip_file_ziparchive($file, $to, $needed_dirs = array() ) {
|
||||||
$z = new ZipArchive();
|
$z = new ZipArchive();
|
||||||
|
|
||||||
// PHP4-compat - php4 classes can't contain constants
|
// PHP4-compat - php4 classes can't contain constants
|
||||||
if ( true !== $z->open($file, /* ZIPARCHIVE::CHECKCONS */ 4) )
|
$zopen = $z->open($file, /* ZIPARCHIVE::CHECKCONS */ 4);
|
||||||
|
if ( true !== $zopen || ZIP_ER_OK !== $zopen ) // may return true, or (int)0 ZIP_ER_OK under certain versions
|
||||||
return new WP_Error('incompatible_archive', __('Incompatible Archive.'));
|
return new WP_Error('incompatible_archive', __('Incompatible Archive.'));
|
||||||
|
|
||||||
for ( $i = 0; $i < $z->numFiles; $i++ ) {
|
for ( $i = 0; $i < $z->numFiles; $i++ ) {
|
||||||
|
|
Loading…
Reference in New Issue