diff --git a/wp-admin/includes/class-wp-filesystem-direct.php b/wp-admin/includes/class-wp-filesystem-direct.php index d73b715bb2..ebd64b3e82 100644 --- a/wp-admin/includes/class-wp-filesystem-direct.php +++ b/wp-admin/includes/class-wp-filesystem-direct.php @@ -287,7 +287,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { // safe mode fails with a trailing slash under certain PHP versions. $path = untrailingslashit($path); if ( empty($path) ) - $path = '/'; + return false; if ( ! $chmod ) $chmod = FS_CHMOD_DIR; diff --git a/wp-admin/includes/class-wp-filesystem-ftpext.php b/wp-admin/includes/class-wp-filesystem-ftpext.php index 5967c6df64..79bacfbaa4 100644 --- a/wp-admin/includes/class-wp-filesystem-ftpext.php +++ b/wp-admin/includes/class-wp-filesystem-ftpext.php @@ -247,6 +247,10 @@ class WP_Filesystem_FTPext extends WP_Filesystem_Base { return false; } function mkdir($path, $chmod = false, $chown = false, $chgrp = false) { + $path = untrailingslashit($path); + if ( empty($path) ) + return false; + if ( !@ftp_mkdir($this->link, $path) ) return false; $this->chmod($path, $chmod); diff --git a/wp-admin/includes/class-wp-filesystem-ftpsockets.php b/wp-admin/includes/class-wp-filesystem-ftpsockets.php index 1dc170a93c..7dae3b7737 100644 --- a/wp-admin/includes/class-wp-filesystem-ftpsockets.php +++ b/wp-admin/includes/class-wp-filesystem-ftpsockets.php @@ -267,6 +267,10 @@ class WP_Filesystem_ftpsockets extends WP_Filesystem_Base { } function mkdir($path, $chmod = false, $chown = false, $chgrp = false ) { + $path = untrailingslashit($path); + if ( empty($path) ) + return false; + if ( ! $this->ftp->mkdir($path) ) return false; if ( ! $chmod ) diff --git a/wp-admin/includes/class-wp-filesystem-ssh2.php b/wp-admin/includes/class-wp-filesystem-ssh2.php index 0e656ff294..3114456e09 100644 --- a/wp-admin/includes/class-wp-filesystem-ssh2.php +++ b/wp-admin/includes/class-wp-filesystem-ssh2.php @@ -311,6 +311,9 @@ class WP_Filesystem_SSH2 extends WP_Filesystem_Base { function mkdir($path, $chmod = false, $chown = false, $chgrp = false) { $path = untrailingslashit($path); + if ( empty($path) ) + return false; + if ( ! $chmod ) $chmod = FS_CHMOD_DIR; if ( ! ssh2_sftp_mkdir($this->sftp_link, $path, $chmod, true) )