Fix broken audio/video functions when sanitizing ID3 data
This fixes a bug where running `wp_kses_post_deep()` on all the ID3 tag data corrupted blob data. See #40075, #40085. Merges [40400] to the 4.4 branch. Built from https://develop.svn.wordpress.org/branches/4.4@40463 git-svn-id: http://core.svn.wordpress.org/branches/4.4@40339 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
b96b3f4d38
commit
63d7638596
|
@ -2938,7 +2938,7 @@ function wp_add_id3_tag_data( &$metadata, $data ) {
|
||||||
if ( ! empty( $data[$version]['comments'] ) ) {
|
if ( ! empty( $data[$version]['comments'] ) ) {
|
||||||
foreach ( $data[$version]['comments'] as $key => $list ) {
|
foreach ( $data[$version]['comments'] as $key => $list ) {
|
||||||
if ( 'length' !== $key && ! empty( $list ) ) {
|
if ( 'length' !== $key && ! empty( $list ) ) {
|
||||||
$metadata[$key] = reset( $list );
|
$metadata[$key] = wp_kses_post( reset( $list ) );
|
||||||
// Fix bug in byte stream analysis.
|
// Fix bug in byte stream analysis.
|
||||||
if ( 'terms_of_use' === $key && 0 === strpos( $metadata[$key], 'yright notice.' ) )
|
if ( 'terms_of_use' === $key && 0 === strpos( $metadata[$key], 'yright notice.' ) )
|
||||||
$metadata[$key] = 'Cop' . $metadata[$key];
|
$metadata[$key] = 'Cop' . $metadata[$key];
|
||||||
|
@ -3028,8 +3028,6 @@ function wp_read_video_metadata( $file ) {
|
||||||
|
|
||||||
wp_add_id3_tag_data( $metadata, $data );
|
wp_add_id3_tag_data( $metadata, $data );
|
||||||
|
|
||||||
$metadata = wp_kses_post_deep( $metadata );
|
|
||||||
|
|
||||||
return $metadata;
|
return $metadata;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3075,8 +3073,6 @@ function wp_read_audio_metadata( $file ) {
|
||||||
|
|
||||||
wp_add_id3_tag_data( $metadata, $data );
|
wp_add_id3_tag_data( $metadata, $data );
|
||||||
|
|
||||||
$metadata = wp_kses_post_deep( $metadata );
|
|
||||||
|
|
||||||
return $metadata;
|
return $metadata;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue