Make WordPress Core


Ignore:
Timestamp:
07/09/2019 05:44:42 AM (7 years ago)
Author:
pento
Message:

Coding Standards: Fix instances of WordPress.PHP.NoSilencedErrors.Discouraged.

Noteable changes:

  • The magic_quotes_runtime and magic_quotes_sybase settings were removed in PHP 5.4, so no longer need to be set.
  • Some functions that use external libraries can generate errors that can't be tested for, so are globally allowed to silence errors.
  • Quite a few functions would cause errors if safe_mode was set. This setting was removed in PHP 5.4.
  • Only a handful of header() calls needed corresponding headers_sent() checks for unit tests to pass, but more may need to be added as the nightlies builds are tested.

See #46732.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/class-wp.php

    r45424 r45611  
    493493                        unset( $headers['Last-Modified'] );
    494494
    495                         // In PHP 5.3+, make sure we are not sending a Last-Modified header.
    496                         if ( function_exists( 'header_remove' ) ) {
    497                                 @header_remove( 'Last-Modified' );
    498                         } else {
    499                                 // In PHP 5.2, send an empty Last-Modified header, but only as a
    500                                 // last resort to override a header already sent. #WP23021
    501                                 foreach ( headers_list() as $header ) {
    502                                         if ( 0 === stripos( $header, 'Last-Modified' ) ) {
    503                                                 $headers['Last-Modified'] = '';
    504                                                 break;
    505                                         }
    506                                 }
    507                         }
    508                 }
    509 
    510                 foreach ( (array) $headers as $name => $field_value ) {
    511                         @header( "{$name}: {$field_value}" );
     495                        if ( ! headers_sent() ) {
     496                                header_remove( 'Last-Modified' );
     497                        }
     498                }
     499
     500                if ( ! headers_sent() ) {
     501                        foreach ( (array) $headers as $name => $field_value ) {
     502                                header( "{$name}: {$field_value}" );
     503                        }
    512504                }
    513505
     
    675667
    676668                                // Only set X-Pingback for single posts that allow pings.
    677                                 if ( $p && pings_open( $p ) ) {
    678                                         @header( 'X-Pingback: ' . get_bloginfo( 'pingback_url', 'display' ) );
     669                                if ( $p && pings_open( $p ) && ! headers_sent() ) {
     670                                        header( 'X-Pingback: ' . get_bloginfo( 'pingback_url', 'display' ) );
    679671                                }
    680672
Note: See TracChangeset for help on using the changeset viewer.