WordPress.org

Make WordPress Core

Ticket #22308: 22308.diff

File 22308.diff, 1.3 KB (added by nacin, 5 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        }