WordPress.org

Make WordPress Core

Opened 6 years ago

Closed 6 years ago

Last modified 5 years ago

#7925 closed defect (bug) (fixed)

update_post_meta() and delete_post_meta() not using wp_is_post_revision() on $post_id, resulting in multiple meta rows and incorrect return values

Reported by: misterbisson Owned by: markjaquith
Milestone: 2.7 Priority: normal
Severity: normal Version:
Component: General Keywords: post_meta
Focuses: Cc:

Description

add_post_meta() uses the following block of code to make sure the passed $post_id is a real post, not a revision:
`

make sure meta is added to the post, not a revision
if ( $the_post = wp_is_post_revision($post_id) )

$post_id = $the_post;

`

However, update_post_meta() and delete_post_meta() do not do that. The bug is present in trunk.

Attachments (1)

post.php.diff (800 bytes) - added by misterbisson 6 years ago.

Download all attachments as: .zip

Change History (5)

misterbisson6 years ago

comment:1 misterbisson6 years ago

I guess i needed some practice setting file extensions and attaching files. Please delete all but the last.

comment:2 markjaquith6 years ago

  • Milestone changed from 2.8 to 2.7
  • Owner changed from anonymous to markjaquith
  • Status changed from new to assigned

Thanks for this! I've seen this in action but couldn't figure out what was going on.

comment:3 markjaquith6 years ago

  • Resolution set to fixed
  • Status changed from assigned to closed

(In [9252]) Update update_post_meta() and delete_post_meta() to work with post revisions. Props misterbisson. fixes #7925

comment:4 markjaquith5 years ago

(In [9743]) Update update_post_meta() and delete_post_meta() to work with post revisions. Props misterbisson. fixes #7925 for 2.6.x

Note: See TracTickets for help on using tickets.