Make WordPress Core

Changeset 36430


Ignore:
Timestamp:
02/01/2016 02:57:53 PM (9 years ago)
Author:
ocean90
Message:

Media: In wp_read_image_metadata() make sure that IPTC keywords are UTF8 encoded.

Prevents missing _wp_attachment_metadata when an image contains keywords with latin extended characters.

Merges [36429] to the 4.4 branch.
See #35316.

Location:
branches/4.4
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/4.4

  • branches/4.4/src/wp-admin/includes/image.php

    r35554 r36430  
    409409    }
    410410
    411     foreach ( $meta as &$value ) {
    412         if ( is_string( $value ) ) {
    413             $value = wp_kses_post( $value );
    414         }
    415     }
     411    foreach ( $meta['keywords'] as $key => $keyword ) {
     412        if ( ! seems_utf8( $keyword ) ) {
     413            $meta['keywords'][ $key ] = utf8_encode( $keyword );
     414        }
     415    }
     416
     417    $meta = wp_kses_post_deep( $meta );
    416418
    417419    /**
  • branches/4.4/src/wp-includes/kses.php

    r35141 r36430  
    15821582
    15831583/**
     1584 * Navigates through an array, object, or scalar, and sanitizes content for
     1585 * allowed HTML tags for post content.
     1586 *
     1587 * @since 4.4.2
     1588 *
     1589 * @param mixed $value The array or string to filter.
     1590 * @return mixed $value The filtered content.
     1591 */
     1592function wp_kses_post_deep( $data ) {
     1593    return map_deep( $data, 'wp_kses_post' );
     1594}
     1595
     1596/**
    15841597 * Strips all of the HTML in the content.
    15851598 *
Note: See TracChangeset for help on using the changeset viewer.