Ticket #11218: 11218.patch
| File 11218.patch, 1.4 KB (added by azaozz, 4 years ago) |
|---|
-
wp-includes/functions.php
2105 2105 2106 2106 // separate the filename into a name and extension 2107 2107 $info = pathinfo($filename); 2108 $ext = !empty($info['extension']) ? $info['extension'] : '';2109 $name = basename($filename, ".{$ext}");2108 $ext = !empty($info['extension']) ? '.' . $info['extension'] : ''; 2109 $name = basename($filename, $ext); 2110 2110 2111 2111 // edge case: if file is named '.ext', treat as an empty name 2112 if( $name === ".$ext")2112 if( $name === $ext ) 2113 2113 $name = ''; 2114 2114 2115 2115 // Increment the file number until we have a unique file to save in $dir. Use $override['unique_filename_callback'] if supplied. … … 2118 2118 } else { 2119 2119 $number = ''; 2120 2120 2121 if ( !empty( $ext ) ) 2122 $ext = ".$ext"; 2121 // change '.ext' to lower case 2122 if ( $ext && strtolower($ext) != $ext ) { 2123 // make sure there's no file with the upper case extension or image sub-sizes may be overwritten 2124 while ( file_exists( $dir . "/$filename" ) ) { 2125 $filename = str_replace( "$number$ext", ++$number . $ext, $filename ); 2126 } 2123 2127 2128 $ext = strtolower($ext); 2129 $filename = preg_replace( '|\.' . preg_quote($info['extension']) . '$|', $ext, $filename ); 2130 } 2131 2124 2132 while ( file_exists( $dir . "/$filename" ) ) { 2125 2133 if ( '' == "$number$ext" ) 2126 2134 $filename = $filename . ++$number . $ext;
