WordPress.org

Make WordPress Core

Ticket #17668: 17668.diff

File 17668.diff, 1.1 KB (added by aaroncampbell, 3 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 ) {