WordPress.org

Make WordPress Core

Ticket #17668: 17668.diff

File 17668.diff, 1.1 KB (added by aaroncampbell, 7 years ago)
  • wp-includes/capabilities.php

     
    820820        case 'delete_page':
    821821                $author_data = get_userdata( $user_id );
    822822                $post = get_post( $args[0] );
     823
     824                if ( 'revision' == $post->post_type ) {
     825                        $post = get_post( $post->post_parent );
     826                }
     827
    823828                $post_type = get_post_type_object( $post->post_type );
    824829
    825830                if ( ! $post_type->map_meta_cap ) {
     
    865870        case 'edit_page':
    866871                $author_data = get_userdata( $user_id );
    867872                $post = get_post( $args[0] );
     873
     874                if ( 'revision' == $post->post_type ) {
     875                        $post = get_post( $post->post_parent );
     876                }
     877
    868878                $post_type = get_post_type_object( $post->post_type );
    869879
    870880                if ( ! $post_type->map_meta_cap ) {
     
    909919        case 'read_page':
    910920                $author_data = get_userdata( $user_id );
    911921                $post = get_post( $args[0] );
     922
     923                if ( 'revision' == $post->post_type ) {
     924                        $post = get_post( $post->post_parent );
     925                }
     926
    912927                $post_type = get_post_type_object( $post->post_type );
    913928
    914929                if ( ! $post_type->map_meta_cap ) {