Make WordPress Core

Ticket #33278: image-edit.php.patch

File image-edit.php.patch, 1.6 KB (added by acbaile, 9 years ago)

Patch that improve this functionality

  • image-edit.php

     
    738738        $filename = $path_parts['filename'];
    739739        $suffix = time() . rand(100, 999);
    740740
     741        // Before using random suffix try to use sizes
     742        $suffix_sizes = $img->get_size();
     743        $suffix_sizes = "-".$suffix_sizes["width"]."x".$suffix_sizes["height"];
     744
    741745        if ( defined('IMAGE_EDIT_OVERWRITE') && IMAGE_EDIT_OVERWRITE &&
    742746                isset($backup_sizes['full-orig']) && $backup_sizes['full-orig']['file'] != $path_parts['basename'] ) {
    743747
     
    746750                else
    747751                        $new_path = $path;
    748752        } else {
    749                 while( true ) {
    750                         $filename = preg_replace( '/-e([0-9]+)$/', '', $filename );
    751                         $filename .= "-e{$suffix}";
    752                         $new_filename = "{$filename}.{$path_parts['extension']}";
    753                         $new_path = "{$path_parts['dirname']}/$new_filename";
    754                         if ( file_exists($new_path) )
    755                                 $suffix++;
    756                         else
    757                                 break;
     753                $filename = preg_replace( "/-e([0-9]+)$/", "", $filename );
     754                $filename = preg_replace( "/-([0-9]{1,5})x([0-9]{1,5})$/", "", $filename );
     755                $filename .= $suffix_sizes;
     756                $new_filename = $filename.".".$path_parts["extension"];
     757                $new_path = $path_parts["dirname"]."/".$new_filename;
     758                if ( file_exists($new_path) ){
     759                        while( true ) {
     760                                $filename = preg_replace( '/-e([0-9]+)$/', '', $filename );
     761                                $filename .= "-e{$suffix}";
     762                                $new_filename = "{$filename}.{$path_parts['extension']}";
     763                                $new_path = "{$path_parts['dirname']}/$new_filename";
     764                                if ( file_exists($new_path) )
     765                                        $suffix++;
     766                                else
     767                                        break;
     768                        }
    758769                }
    759770        }
    760771