Make WordPress Core


Ignore:
Timestamp:
01/20/2016 05:34:30 AM (9 years ago)
Author:
dd32
Message:

Taxonomy: Populate term cache with proper clone of term objects.

[34999] modified the cache strategy for terms in the context of
wp_get_object_terms(). As part of these changes, the object_id property of
term objects had to be unset before being cached. To avoid modifying passed-by-
reference terms, update_term_cache() attempted to make a copy of the terms
passed to the function; however, it failed to use the clone keyword, and thus
only created a reference instead of a copy.

Merges [36323] to the 4.4 branch.
Props berengerzyla.
Fixes #35462.

Location:
branches/4.4
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/4.4

  • branches/4.4/src/wp-includes/taxonomy.php

    r36109 r36358  
    36473647    foreach ( (array) $terms as $term ) {
    36483648        // Create a copy in case the array was passed by reference.
    3649         $_term = $term;
     3649        $_term = clone $term;
    36503650
    36513651        // Object ID should not be cached.
Note: See TracChangeset for help on using the changeset viewer.