WordPress.org

Make WordPress Core

Ticket #35108: 35108.diff

File 35108.diff, 2.4 KB (added by joemcgill, 6 years ago)
  • src/wp-includes/media.php

    diff --git src/wp-includes/media.php src/wp-includes/media.php
    index 9d4025d..f41acd8 100644
    function wp_calculate_image_srcset( $size_array, $image_src, $image_meta, $attac 
    10461046                        continue;
    10471047                }
    10481048
    1049                 // Filter out images that are wider than '$max_srcset_image_width'.
    1050                 if ( $max_srcset_image_width && $image['width'] > $max_srcset_image_width ) {
     1049                /*
     1050                 * Filter out images that are wider than '$max_srcset_image_width' unless
     1051                 * that file is in the 'src' attribute.
     1052                 */
     1053                if ( ( $max_srcset_image_width && $image['width'] > $max_srcset_image_width ) && ( false === strpos( $image_src, $image['file'] ) ) ) {
    10511054                        continue;
    10521055                }
    10531056
  • tests/phpunit/tests/media.php

    diff --git tests/phpunit/tests/media.php tests/phpunit/tests/media.php
    index ede300f..4028169 100644
    EOF; 
    936936        }
    937937
    938938        /**
     939         * @ticket 35108
     940         */
     941        function test_wp_calculate_image_srcset_include_src() {
     942                // Mock data for this test.
     943                $size_array = array( 2000, 1000);
     944                $image_src = 'http://' . WP_TESTS_DOMAIN . '/wp-content/uploads/2015/12/test.png';
     945                $image_meta = array(
     946                        'width' => 2000,
     947                        'height' => 1000,
     948                        'file' => '2015/12/test.png',
     949                        'sizes' => array(
     950                                'thumbnail' => array(
     951                                        'file' => 'test-150x150.png',
     952                                        'width' => 150,
     953                                        'height' => 150,
     954                                        'mime-type' => 'image/png',
     955                                ),
     956                                'medium' => array(
     957                                        'file' => 'test-300x150.png',
     958                                        'width' => 300,
     959                                        'height' => 150,
     960                                        'mime-type' => 'image/png',
     961                                ),
     962                                'medium_large' => array(
     963                                        'file' => 'test-768x384.png',
     964                                        'width' => 768,
     965                                        'height' => 384,
     966                                        'mime-type' => 'image/png',
     967                                ),
     968                                'large' => array(
     969                                        'file' => 'test-1024x512.png',
     970                                        'width' => 1024,
     971                                        'height' => 512,
     972                                        'mime-type' => 'image/png',
     973                                ),
     974                        ),
     975                );
     976
     977                $expected_srcset = 'http://' . WP_TESTS_DOMAIN . '/wp-content/uploads/2015/12/test-300x150.png 300w, http://' . WP_TESTS_DOMAIN . '/wp-content/uploads/2015/12/test-768x384.png 768w, http://' . WP_TESTS_DOMAIN . '/wp-content/uploads/2015/12/test-1024x512.png 1024w, http://' . WP_TESTS_DOMAIN . '/wp-content/uploads/2015/12/test.png 2000w';
     978
     979                $this->assertSame( $expected_srcset, wp_calculate_image_srcset( $size_array, $image_src, $image_meta ) );
     980        }
     981
     982        /**
    939983         * @ticket 33641
    940984         */
    941985        function test_wp_get_attachment_image_srcset() {