Code is Poetry.

WordPress' code just... wasn't.
This is now dealt with.

Props jrf, pento, netweb, GaryJ, jdgrimes, westonruter, Greg Sherwood from PHPCS, and everyone who's ever contributed to WPCS and PHPCS.
Fixes #41057.



git-svn-id: https://develop.svn.wordpress.org/trunk@42343 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Gary Pendergast
2017-11-30 23:09:33 +00:00
parent ec6a089f98
commit 8f95800d52
1103 changed files with 105981 additions and 78187 deletions

View File

@@ -52,23 +52,28 @@ class WP_Http_Encoding {
*/
public static function decompress( $compressed, $length = null ) {
if ( empty($compressed) )
if ( empty( $compressed ) ) {
return $compressed;
}
if ( false !== ( $decompressed = @gzinflate( $compressed ) ) )
if ( false !== ( $decompressed = @gzinflate( $compressed ) ) ) {
return $decompressed;
}
if ( false !== ( $decompressed = self::compatible_gzinflate( $compressed ) ) )
if ( false !== ( $decompressed = self::compatible_gzinflate( $compressed ) ) ) {
return $decompressed;
}
if ( false !== ( $decompressed = @gzuncompress( $compressed ) ) )
if ( false !== ( $decompressed = @gzuncompress( $compressed ) ) ) {
return $decompressed;
}
if ( function_exists('gzdecode') ) {
if ( function_exists( 'gzdecode' ) ) {
$decompressed = @gzdecode( $compressed );
if ( false !== $decompressed )
if ( false !== $decompressed ) {
return $decompressed;
}
}
return $compressed;
@@ -96,33 +101,38 @@ class WP_Http_Encoding {
* @param string $gzData String to decompress.
* @return string|bool False on failure.
*/
public static function compatible_gzinflate($gzData) {
public static function compatible_gzinflate( $gzData ) {
// Compressed data might contain a full header, if so strip it for gzinflate().
if ( substr($gzData, 0, 3) == "\x1f\x8b\x08" ) {
$i = 10;
$flg = ord( substr($gzData, 3, 1) );
if ( substr( $gzData, 0, 3 ) == "\x1f\x8b\x08" ) {
$i = 10;
$flg = ord( substr( $gzData, 3, 1 ) );
if ( $flg > 0 ) {
if ( $flg & 4 ) {
list($xlen) = unpack('v', substr($gzData, $i, 2) );
$i = $i + 2 + $xlen;
list($xlen) = unpack( 'v', substr( $gzData, $i, 2 ) );
$i = $i + 2 + $xlen;
}
if ( $flg & 8 )
$i = strpos($gzData, "\0", $i) + 1;
if ( $flg & 16 )
$i = strpos($gzData, "\0", $i) + 1;
if ( $flg & 2 )
if ( $flg & 8 ) {
$i = strpos( $gzData, "\0", $i ) + 1;
}
if ( $flg & 16 ) {
$i = strpos( $gzData, "\0", $i ) + 1;
}
if ( $flg & 2 ) {
$i = $i + 2;
}
}
$decompressed = @gzinflate( substr($gzData, $i, -8) );
if ( false !== $decompressed )
$decompressed = @gzinflate( substr( $gzData, $i, -8 ) );
if ( false !== $decompressed ) {
return $decompressed;
}
}
// Compressed data from java.util.zip.Deflater amongst others.
$decompressed = @gzinflate( substr($gzData, 2) );
if ( false !== $decompressed )
$decompressed = @gzinflate( substr( $gzData, 2 ) );
if ( false !== $decompressed ) {
return $decompressed;
}
return false;
}
@@ -139,25 +149,29 @@ class WP_Http_Encoding {
* @return string Types of encoding to accept.
*/
public static function accept_encoding( $url, $args ) {
$type = array();
$type = array();
$compression_enabled = self::is_available();
if ( ! $args['decompress'] ) // Decompression specifically disabled.
if ( ! $args['decompress'] ) { // Decompression specifically disabled.
$compression_enabled = false;
elseif ( $args['stream'] ) // Disable when streaming to file.
} elseif ( $args['stream'] ) { // Disable when streaming to file.
$compression_enabled = false;
elseif ( isset( $args['limit_response_size'] ) ) // If only partial content is being requested, we won't be able to decompress it.
} elseif ( isset( $args['limit_response_size'] ) ) { // If only partial content is being requested, we won't be able to decompress it.
$compression_enabled = false;
}
if ( $compression_enabled ) {
if ( function_exists( 'gzinflate' ) )
if ( function_exists( 'gzinflate' ) ) {
$type[] = 'deflate;q=1.0';
}
if ( function_exists( 'gzuncompress' ) )
if ( function_exists( 'gzuncompress' ) ) {
$type[] = 'compress;q=0.5';
}
if ( function_exists( 'gzdecode' ) )
if ( function_exists( 'gzdecode' ) ) {
$type[] = 'gzip;q=0.5';
}
}
/**
@@ -172,7 +186,7 @@ class WP_Http_Encoding {
*/
$type = apply_filters( 'wp_http_accept_encoding', $type, $url, $args );
return implode(', ', $type);
return implode( ', ', $type );
}
/**
@@ -198,12 +212,13 @@ class WP_Http_Encoding {
* @param array|string $headers All of the available headers.
* @return bool
*/
public static function should_decode($headers) {
public static function should_decode( $headers ) {
if ( is_array( $headers ) ) {
if ( array_key_exists('content-encoding', $headers) && ! empty( $headers['content-encoding'] ) )
if ( array_key_exists( 'content-encoding', $headers ) && ! empty( $headers['content-encoding'] ) ) {
return true;
}
} elseif ( is_string( $headers ) ) {
return ( stripos($headers, 'content-encoding:') !== false );
return ( stripos( $headers, 'content-encoding:' ) !== false );
}
return false;
@@ -223,6 +238,6 @@ class WP_Http_Encoding {
* @return bool
*/
public static function is_available() {
return ( function_exists('gzuncompress') || function_exists('gzdeflate') || function_exists('gzinflate') );
return ( function_exists( 'gzuncompress' ) || function_exists( 'gzdeflate' ) || function_exists( 'gzinflate' ) );
}
}