WordPress.org

Make WordPress Core

Ticket #22308: 22308.diff

File 22308.diff, 1.3 KB (added by nacin, 2 years ago)
  • wp-includes/class-wp-image-editor-imagick.php

     
    2929        /** 
    3030         * Checks to see if current environment supports Imagick. 
    3131         * 
    32          * We require Imagick 2.1.1 or greater, based on whether the queryFormats() 
     32         * We require Imagick 2.2.0 or greater, based on whether the queryFormats() 
    3333         * method can be called statically. 
    3434         * 
    3535         * @since 3.5.0 
     
    4343                if ( ! extension_loaded( 'imagick' ) || ! class_exists( 'Imagick' ) || ! class_exists( 'ImagickPixel' ) ) 
    4444                        return false; 
    4545 
     46                if ( version_compare( phpversion( 'imagick' ), '2.2.0', '<' ) ) 
     47                        return false; 
     48 
    4649                $required_methods = array( 
    4750                        'clear', 
    4851                        'destroy', 
     
    6467                ); 
    6568 
    6669                // Now, test for deep requirements within Imagick. 
    67                 if ( ! is_callable( 'Imagick', 'queryFormats' ) || 
    68                          ! defined( 'imagick::COMPRESSION_JPEG' ) || 
    69                          array_diff( $required_methods, get_class_methods( 'Imagick' ) ) ) { 
     70                if ( ! defined( 'imagick::COMPRESSION_JPEG' ) ) 
     71                        return false; 
    7072 
     73                if ( array_diff( $required_methods, get_class_methods( 'Imagick' ) ) ) 
    7174                        return false; 
    72                 } 
    7375 
    7476                return true; 
    7577        }