Theme Editior: Base the nonce on a simpler combination of fields, for easier debugging & reading.
See #42609. Fixes #42705. Built from https://develop.svn.wordpress.org/trunk@42246 git-svn-id: http://core.svn.wordpress.org/trunk@42075 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
@@ -414,8 +414,7 @@ function wp_edit_theme_plugin_file( $args ) {
|
||||
return new WP_Error( 'non_existent_theme', __( 'The requested theme does not exist.' ) );
|
||||
}
|
||||
|
||||
$real_file = $theme->get_stylesheet_directory() . '/' . $file;
|
||||
if ( ! wp_verify_nonce( $args['nonce'], 'edit-theme_' . $real_file . $stylesheet ) ) {
|
||||
if ( ! wp_verify_nonce( $args['nonce'], 'edit-theme_' . $stylesheet . '_' . $file ) ) {
|
||||
return new WP_Error( 'nonce_failure' );
|
||||
}
|
||||
|
||||
@@ -450,7 +449,10 @@ function wp_edit_theme_plugin_file( $args ) {
|
||||
return new WP_Error( 'disallowed_theme_file', __( 'Sorry, that file cannot be edited.' ) );
|
||||
}
|
||||
|
||||
$real_file = $theme->get_stylesheet_directory() . '/' . $file;
|
||||
|
||||
$is_active = ( get_stylesheet() === $stylesheet || get_template() === $stylesheet );
|
||||
|
||||
} else {
|
||||
return new WP_Error( 'missing_theme_or_plugin' );
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user