WordPress.org

Make WordPress Core

Ticket #43815: 43815.diff

File 43815.diff, 1.4 KB (added by jeherve, 4 years ago)

Text Widget: suppress all warnings thrown when using invalid HTML in legacy mode

  • tests/phpunit/tests/widgets/text-widget.php

     
    557557                $legacy_text_examples = array(
    558558                        '<span class="hello"></span>',
    559559                        '<blockquote>Quote <footer>Citation</footer></blockquote>',
     560                        '<img src=\"http://example.com/img.jpg\" border=\"0\" title=\"Example\" /></a>',
    560561                        '<span></span>',
    561562                        "<ul>\n<li><a href=\"#\" class=\"location\"></a>List Item 1</li>\n<li><a href=\"#\" class=\"location\"></a>List Item 2</li>\n</ul>",
    562563                        '<a href="#" class="map"></a>',
  • src/wp-includes/widgets/class-wp-widget-text.php

     
    120120                }
    121121
    122122                $doc = new DOMDocument();
     123
     124                // Suppress warnings generated by loadHTML
     125                libxml_use_internal_errors( true );
    123126                @$doc->loadHTML(
    124127                        sprintf(
    125128                                '<!DOCTYPE html><html><head><meta charset="%s"></head><body>%s</body></html>',
     
    127130                                $instance['text']
    128131                        )
    129132                );
     133                libxml_use_internal_errors( false );
     134
    130135                $body = $doc->getElementsByTagName( 'body' )->item( 0 );
    131136
    132137                // See $allowedposttags.