Make WordPress Core

Changeset 19579


Ignore:
Timestamp:
12/10/2011 06:26:48 PM (15 years ago)
Author:
ryan
Message:

Best practice, use wp_safe_redirect() when dealing with referrers. Props nacin.

Location:
trunk/wp-admin
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/edit-comments.php

    r19528 r19579  
    3131                $comment_ids = array_map( 'absint', explode( ',', $_REQUEST['ids'] ) );
    3232        } elseif ( wp_get_referer() ) {
    33                 wp_redirect( wp_get_referer() );
     33                wp_safe_redirect( wp_get_referer() );
    3434                exit;
    3535        }
    … …  
    9393                $redirect_to = add_query_arg( 'ids', join( ',', $comment_ids ), $redirect_to );
    9494
    95         wp_redirect( $redirect_to );
     95        wp_safe_redirect( $redirect_to );
    9696        exit;
    9797} elseif ( ! empty( $_GET['_wp_http_referer'] ) ) {
  • trunk/wp-admin/includes/misc.php

    r19368 r19579  
    368368
    369369                update_user_meta($user->ID, $option, $value);
    370                 wp_redirect( remove_query_arg( array('pagenum', 'apage', 'paged'), wp_get_referer() ) );
     370                wp_safe_redirect( remove_query_arg( array('pagenum', 'apage', 'paged'), wp_get_referer() ) );
    371371                exit;
    372372        }
  • trunk/wp-admin/network/site-themes.php

    r19577 r19579  
    119119        restore_current_blog();
    120120
    121         wp_redirect( add_query_arg( array( 'id' => $id, $action => $n ), $referer ) );
     121        wp_safe_redirect( add_query_arg( array( 'id' => $id, $action => $n ), $referer ) );
    122122        exit;
    123123}
    124124
    125125if ( isset( $_GET['action'] ) && 'update-site' == $_GET['action'] ) {
    126         wp_redirect( $referer );
     126        wp_safe_redirect( $referer );
    127127        exit();
    128128}
  • trunk/wp-admin/network/site-users.php

    r19577 r19579  
    154154
    155155        restore_current_blog();
    156         wp_redirect( add_query_arg( 'update', $update, $referer ) );
     156        wp_safe_redirect( add_query_arg( 'update', $update, $referer ) );
    157157        exit();
    158158}
    159159
    160160if ( isset( $_GET['action'] ) && 'update-site' == $_GET['action'] ) {
    161         wp_redirect( $referer );
     161        wp_safe_redirect( $referer );
    162162        exit();
    163163}
  • trunk/wp-admin/network/sites.php

    r19514 r19579  
    6464                        if ( $id != '0' && $id != $current_site->blog_id && current_user_can( 'delete_site', $id ) ) {
    6565                                wpmu_delete_blog( $id, true );
    66                                 wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'delete' ), wp_get_referer() ) );
     66                                wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'delete' ), wp_get_referer() ) );
    6767                        } else {
    68                                 wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'not_deleted' ), wp_get_referer() ) );
     68                                wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'not_deleted' ), wp_get_referer() ) );
    6969                        }
    7070
    … …  
    111111                                }
    112112
    113                                 wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => $blogfunction ), wp_get_referer() ) );
     113                                wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => $blogfunction ), wp_get_referer() ) );
    114114                        } else {
    115115                                wp_redirect( network_admin_url( 'sites.php' ) );
    … …  
    124124
    125125                        update_blog_status( $id, 'archived', '1' );
    126                         wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'archive' ), wp_get_referer() ) );
     126                        wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'archive' ), wp_get_referer() ) );
    127127                        exit();
    128128                break;
    … …  
    134134
    135135                        update_blog_status( $id, 'archived', '0' );
    136                         wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'unarchive' ), wp_get_referer() ) );
     136                        wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'unarchive' ), wp_get_referer() ) );
    137137                        exit();
    138138                break;
    … …  
    145145                        update_blog_status( $id, 'deleted', '0' );
    146146                        do_action( 'activate_blog', $id );
    147                         wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'activate' ), wp_get_referer() ) );
     147                        wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'activate' ), wp_get_referer() ) );
    148148                        exit();
    149149                break;
    … …  
    156156                        do_action( 'deactivate_blog', $id );
    157157                        update_blog_status( $id, 'deleted', '1' );
    158                         wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'deactivate' ), wp_get_referer() ) );
     158                        wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'deactivate' ), wp_get_referer() ) );
    159159                        exit();
    160160                break;
    … …  
    166166
    167167                        update_blog_status( $id, 'spam', '0' );
    168                         wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'unspam' ), wp_get_referer() ) );
     168                        wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'unspam' ), wp_get_referer() ) );
    169169                        exit();
    170170                break;
    … …  
    176176
    177177                        update_blog_status( $id, 'spam', '1' );
    178                         wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'spam' ), wp_get_referer() ) );
     178                        wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'spam' ), wp_get_referer() ) );
    179179                        exit();
    180180                break;
    … …  
    186186
    187187                        update_blog_status( $id, 'mature', '0' );
    188                         wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'unmature' ), wp_get_referer() ) );
     188                        wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'unmature' ), wp_get_referer() ) );
    189189                        exit();
    190190                break;
    … …  
    196196
    197197                        update_blog_status( $id, 'mature', '1' );
    198                         wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'mature' ), wp_get_referer() ) );
     198                        wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'mature' ), wp_get_referer() ) );
    199199                        exit();
    200200                break;
  • trunk/wp-admin/network/themes.php

    r19577 r19579  
    4848                        unset( $allowed_themes[ $_GET['theme'] ] );
    4949                        update_site_option( 'allowedthemes', $allowed_themes );
    50                         wp_redirect( add_query_arg( 'disabled', '1', $referer ) );
     50                        wp_safe_redirect( add_query_arg( 'disabled', '1', $referer ) );
    5151                        exit;
    5252                        break;
    … …  
    5555                        $themes = isset( $_POST['checked'] ) ? (array) $_POST['checked'] : array();
    5656                        if ( empty($themes) ) {
    57                                 wp_redirect( add_query_arg( 'error', 'none', $referer ) );
     57                                wp_safe_redirect( add_query_arg( 'error', 'none', $referer ) );
    5858                                exit;
    5959                        }
    … …  
    6161                                $allowed_themes[ $theme ] = true;
    6262                        update_site_option( 'allowedthemes', $allowed_themes );
    63                         wp_redirect( add_query_arg( 'enabled', count( $themes ), $referer ) );
     63                        wp_safe_redirect( add_query_arg( 'enabled', count( $themes ), $referer ) );
    6464                        exit;
    6565                        break;
    … …  
    6868                        $themes = isset( $_POST['checked'] ) ? (array) $_POST['checked'] : array();
    6969                        if ( empty($themes) ) {
    70                                 wp_redirect( add_query_arg( 'error', 'none', $referer ) );
     70                                wp_safe_redirect( add_query_arg( 'error', 'none', $referer ) );
    7171                                exit;
    7272                        }
    … …  
    7474                                unset( $allowed_themes[ $theme ] );
    7575                        update_site_option( 'allowedthemes', $allowed_themes );
    76                         wp_redirect( add_query_arg( 'disabled', count( $themes ), $referer ) );
     76                        wp_safe_redirect( add_query_arg( 'disabled', count( $themes ), $referer ) );
    7777                        exit;
    7878                        break;
    … …  
    118118
    119119                        if ( empty( $themes ) ) {
    120                                 wp_redirect( add_query_arg( 'error', 'none', $referer ) );
     120                                wp_safe_redirect( add_query_arg( 'error', 'none', $referer ) );
    121121                                exit;
    122122                        }
    … …  
    135135
    136136                        if ( empty( $themes ) ) {
    137                                 wp_redirect( add_query_arg( 'error', 'main', $referer ) );
     137                                wp_safe_redirect( add_query_arg( 'error', 'main', $referer ) );
    138138                                exit;
    139139                        }
  • trunk/wp-admin/network/users.php

    r19577 r19579  
    167167                                }
    168168
    169                                 wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => $userfunction ), wp_get_referer() ) );
     169                                wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => $userfunction ), wp_get_referer() ) );
    170170                        } else {
    171171                                $location = network_admin_url( 'users.php' );
Note: See TracChangeset for help on using the changeset viewer.