[wp-trac] [WordPress Trac] #13060: Duplicate Term bug
    WordPress Trac 
    wp-trac at lists.automattic.com
       
    Tue Apr 20 16:55:24 UTC 2010
    
    
  
#13060: Duplicate Term bug
--------------------------+-------------------------------------------------
 Reporter:  DeannaS       |       Owner:  dd32       
     Type:  defect (bug)  |      Status:  assigned   
 Priority:  normal        |   Milestone:  3.0        
Component:  Taxonomy      |     Version:  3.0        
 Severity:  normal        |    Keywords:  needs-patch
--------------------------+-------------------------------------------------
Changes (by nacin):
  * keywords:  reporter-feedback => needs-patch
  * owner:  filosofo => dd32
  * status:  new => assigned
Comment:
 dd32 and I have talked about this bug. Neither of us ended up creating a
 ticket yet (oops) but it's on both of our to-do lists. I'm actually
 surprised it's taken this long for someone else to notice it.
 Steps to reproduce:
 1. Add a category called 'apple'. Don't give it a slug or anything.
 2. Repeat step 1. Should blow up with mysql_real_escape_string() errors.
 How to fix:
 1. Line 1548. $term_id = is_term( $term ) was changed to is_term( $term,
 $tax ) in r13087. When is_term() is given a taxonomy, it decides to return
 an object instead of just a term ID. Easy fix, one of which would be to
 rename $term_id to $_term there and add an else to the end, in which we
 set $term_id = $_term['term_id'].
 2. Once that is fixed, try the steps to reproduce again. You'll end up
 with another row being added to the table to the left, exactly identical.
 The database is untouched. This is because wp_insert_term() returns an
 array (not WP_Error) when the term/slug/taxonomy combo already exists.
 admin-ajax.php doesn't account for that, either as a return value, or
 beforehand. (2.9 used category_exists, i.e. is_term...)
-- 
Ticket URL: <http://core.trac.wordpress.org/ticket/13060#comment:3>
WordPress Trac <http://core.trac.wordpress.org/>
WordPress blogging software
    
    
More information about the wp-trac
mailing list