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/link.php

    r56549 r58069  
    1313require_once __DIR__ . '/admin.php';
    1414
    15 wp_reset_vars( array( 'action', 'cat_id', 'link_id' ) );
     15$action  = ! empty( $_REQUEST['action'] ) ? sanitize_text_field( $_REQUEST['action'] ) : '';
     16$cat_id  = ! empty( $_REQUEST['cat_id'] ) ? absint( $_REQUEST['cat_id'] ) : 0;
     17$link_id = ! empty( $_REQUEST['link_id'] ) ? absint( $_REQUEST['link_id'] ) : 0;
    1618
    1719if ( ! current_user_can( 'manage_links' ) ) {
Note: See TracChangeset for help on using the changeset viewer.