Ticket #33645: 33645-4.4-expanded.patch
File 33645-4.4-expanded.patch, 3.2 KB (added by , 10 years ago) |
---|
-
src/wp-includes/formatting.php
496 496 $allblocks = '(?:table|thead|tfoot|caption|col|colgroup|tbody|tr|td|th|div|dl|dd|dt|ul|ol|li|pre|form|map|area|blockquote|address|math|style|p|h[1-6]|hr|fieldset|legend|section|article|aside|hgroup|header|footer|nav|figure|figcaption|details|menu|summary)'; 497 497 498 498 // Add a single line break above block-level opening tags. 499 $pee = preg_replace('!(<' . $allblocks . '[ ^>]*>)!', "\n$1", $pee);499 $pee = preg_replace('!(<' . $allblocks . '[\s/>])!', "\n$1", $pee); 500 500 501 501 // Add a double line break below block-level closing tags. 502 502 $pee = preg_replace('!(</' . $allblocks . '>)!', "$1\n\n", $pee); … … 596 596 $pee = str_replace(array_keys($pre_tags), array_values($pre_tags), $pee); 597 597 598 598 // Restore newlines in all elements. 599 $pee = str_replace( " <!-- wpnl --> ", "\n", $pee ); 599 if ( false !== strpos( $pee, '<!-- wpnl -->' ) ) { 600 $pee = str_replace( array( ' <!-- wpnl --> ', '<!-- wpnl -->' ), "\n", $pee ); 601 } 600 602 601 603 return $pee; 602 604 } -
tests/phpunit/tests/formatting/Autop.php
328 328 'summary', 329 329 ); 330 330 331 // Check whitespace normalization. 331 332 $content = array(); 332 333 333 334 foreach ( $blocks as $block ) { … … 335 336 } 336 337 337 338 $expected = join( "\n", $content ); 338 $ content = join( "\n\n", $content ); // WS difference339 $input = join( "\n\n", $content ); // WS difference 339 340 340 $this->assertEquals( $expected, trim( wpautop( $content ) ) ); 341 $this->assertEquals( $expected, trim( wpautop( $input ) ) ); 342 343 $input = join( "", $content ); // WS difference 344 345 $this->assertEquals( $expected, trim( wpautop( $input ) ) ); 346 347 // Check whitespace addition. 348 $content = array(); 349 350 foreach ( $blocks as $block ) { 351 $content[] = "<$block/>"; 352 } 353 354 $expected = join( "\n", $content ); 355 $input = join( "", $content ); 356 357 $this->assertEquals( $expected, trim( wpautop( $input ) ) ); 358 359 // Check whitespace addition with attributes. 360 $content = array(); 361 362 foreach ( $blocks as $block ) { 363 $content[] = "<$block attr='value'>foo</$block>"; 364 } 365 366 $expected = join( "\n", $content ); 367 $input = join( "", $content ); 368 369 $this->assertEquals( $expected, trim( wpautop( $input ) ) ); 341 370 } 342 371 343 372 /** … … 420 449 "Hello <!-- a\nhref='world' -->", 421 450 "<p>Hello <!-- a\nhref='world' --></p>\n", 422 451 ), 452 array( 453 "Hello <!-- <object>\n<param>\n<param>\n<embed>\n</embed>\n</object>\n -->", 454 "<p>Hello <!-- <object>\n<param>\n<param>\n<embed>\n</embed>\n</object>\n --></p>\n", 455 ), 456 array( 457 "Hello <!-- <object>\n<param/>\n<param/>\n<embed>\n</embed>\n</object>\n -->", 458 "<p>Hello <!-- <object>\n<param/>\n<param/>\n<embed>\n</embed>\n</object>\n --></p>\n", 459 ), 423 460 /* Block elements inside comments will fail this test in all versions, it's not a regression. 424 461 array( 425 462 "Hello <!-- <hr> a\nhref='world' -->",