Make WordPress Core


Ignore:
Timestamp:
05/01/2024 05:59:05 PM (5 months ago)
Author:
swissspidy
Message:

General: Remove any usage of wp_reset_vars().

The way wp_reset_vars() sets global variables based on $_POST and $_GET values makes code hard to understand and maintain. It also makes it easy to forget to sanitize input.

This change removes the few places where wp_reset_vars() is used in the admin to explicitly use $_REQUEST and sanitize any input.

Props swissspidy, audrasjb, davideferre, killua99, weijland, voldemortensen.
Fixes #38073.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-admin/edit-tag-form.php

    r56570 r58069  
    4545}
    4646
    47 /**
    48  * Use with caution, see https://developer.wordpress.org/reference/functions/wp_reset_vars/
    49  */
    50 wp_reset_vars( array( 'wp_http_referer' ) );
    51 
     47$wp_http_referer = ! empty( $_REQUEST['wp_http_referer'] ) ? sanitize_text_field( $_REQUEST['wp_http_referer'] ) : '';
    5248$wp_http_referer = remove_query_arg( array( 'action', 'message', 'tag_ID' ), $wp_http_referer );
    5349
Note: See TracChangeset for help on using the changeset viewer.