From 8b431f68592eafa9ae7a85eb458b0fa952b11a1e Mon Sep 17 00:00:00 2001 From: Scott Taylor Date: Fri, 26 Aug 2016 18:46:17 +0000 Subject: [PATCH] FTP: ensure that there is only one class named `ftp`, which is what is expected in the loading of this arcane library. This ensures that an autoload generator, something along the lines of Composer, won't hiccup when it gets to these files. See #36335. git-svn-id: https://develop.svn.wordpress.org/trunk@38380 602fd350-edb4-49c9-b593-d223f7449a82 --- src/wp-admin/includes/class-ftp-pure.php | 6 +----- src/wp-admin/includes/class-ftp-sockets.php | 6 +----- src/wp-admin/includes/class-ftp.php | 8 +++++++- 3 files changed, 9 insertions(+), 11 deletions(-) diff --git a/src/wp-admin/includes/class-ftp-pure.php b/src/wp-admin/includes/class-ftp-pure.php index 28e56779f9..38d348badf 100644 --- a/src/wp-admin/includes/class-ftp-pure.php +++ b/src/wp-admin/includes/class-ftp-pure.php @@ -25,16 +25,12 @@ * @link http://www.phpclasses.org/browse/package/1743.html Site * @license LGPL http://www.opensource.org/licenses/lgpl-license.html */ -class ftp extends ftp_base { +class ftp_pure extends ftp_base { function __construct($verb=FALSE, $le=FALSE) { parent::__construct(false, $verb, $le); } - function ftp($verb=FALSE, $le=FALSE) { - $this->__construct($verb, $le); - } - // // // diff --git a/src/wp-admin/includes/class-ftp-sockets.php b/src/wp-admin/includes/class-ftp-sockets.php index c71205e921..5ca4a2b579 100644 --- a/src/wp-admin/includes/class-ftp-sockets.php +++ b/src/wp-admin/includes/class-ftp-sockets.php @@ -25,16 +25,12 @@ * @link http://www.phpclasses.org/browse/package/1743.html Site * @license LGPL http://www.opensource.org/licenses/lgpl-license.html */ -class ftp extends ftp_base { +class ftp_sockets extends ftp_base { function __construct($verb=FALSE, $le=FALSE) { parent::__construct(true, $verb, $le); } - function ftp($verb=FALSE, $le=FALSE) { - $this->__construct($verb, $le); - } - // // // diff --git a/src/wp-admin/includes/class-ftp.php b/src/wp-admin/includes/class-ftp.php index de6a29966a..35f670ff38 100644 --- a/src/wp-admin/includes/class-ftp.php +++ b/src/wp-admin/includes/class-ftp.php @@ -818,7 +818,7 @@ class ftp_base { function glob_regexp($pattern,$probe) { $sensitive=(PHP_OS!='WIN32'); return ($sensitive? - preg_match( '/' . preg_quote( $pattern, '/' ) . '/', $probe ) : + preg_match( '/' . preg_quote( $pattern, '/' ) . '/', $probe ) : preg_match( '/' . preg_quote( $pattern, '/' ) . '/i', $probe ) ); } @@ -904,3 +904,9 @@ if ( ! $mod_sockets && function_exists( 'dl' ) && is_callable( 'dl' ) ) { } require_once dirname( __FILE__ ) . "/class-ftp-" . ( $mod_sockets ? "sockets" : "pure" ) . ".php"; + +if ( $mod_sockets ) { + class ftp extends ftp_sockets {} +} else { + class ftp extends ftp_pure {} +}