Media: Improve handling of extensionless filenames.

Merge of [37756] to the 4.5 branch.

See #37111.
Built from https://develop.svn.wordpress.org/branches/4.5@37809


git-svn-id: http://core.svn.wordpress.org/branches/4.5@37774 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
Joe McGill 2016-06-21 14:52:06 +00:00
parent df44f6cbc4
commit b747172c20
2 changed files with 11 additions and 2 deletions

View File

@ -1364,7 +1364,8 @@ function remove_accents( $string ) {
* operating systems and special characters requiring special escaping
* to manipulate at the command line. Replaces spaces and consecutive
* dashes with a single dash. Trims period, dash and underscore from beginning
* and end of filename.
* and end of filename. It is not guaranteed that this function will return a
* filename that is allowed to be uploaded.
*
* @since 2.1.0
*
@ -1389,6 +1390,14 @@ function sanitize_file_name( $filename ) {
$filename = preg_replace( '/[\r\n\t -]+/', '-', $filename );
$filename = trim( $filename, '.-_' );
if ( false === strpos( $filename, '.' ) ) {
$mime_types = wp_get_mime_types();
$filetype = wp_check_filetype( 'test.' . $filename, $mime_types );
if ( $filetype['ext'] === $filename ) {
$filename = 'unnamed-file.' . $filetype['ext'];
}
}
// Split the filename into a base and extension[s]
$parts = explode('.', $filename);

View File

@ -4,7 +4,7 @@
*
* @global string $wp_version
*/
$wp_version = '4.5.3-alpha-37806';
$wp_version = '4.5.3-alpha-37809';
/**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.