Ticket #30613: 30613.diff
File 30613.diff, 17.9 KB (added by , 6 years ago) |
---|
-
src/wp-admin/customize.php
303 303 } 304 304 } 305 305 306 $settings = wp_json_encode( $settings ); 307 if ( false === $settings ) { 308 $settings = "[]"; 309 } 310 306 311 ?> 307 312 <script type="text/javascript"> 308 var _wpCustomizeSettings = <?php echo wp_json_encode( $settings ); ?>;313 var _wpCustomizeSettings = <?php echo $settings; ?>; 309 314 </script> 310 315 </div> 311 316 </body> -
src/wp-admin/includes/ajax-actions.php
289 289 ); 290 290 } 291 291 292 wp_die( wp_json_encode( $return ) ); 292 $return = wp_json_encode( $return ); 293 if ( false === $return ) { 294 $return = "[]"; 295 } 296 297 wp_die( $return ); 293 298 } 294 299 295 300 /** … … 1373 1378 1374 1379 $markup = ob_get_clean(); 1375 1380 1376 echo wp_json_encode(array(1381 $json = wp_json_encode( array( 1377 1382 'replace-id' => $type . '-' . $item->name, 1378 1383 'markup' => $markup, 1379 )); 1384 ) ); 1385 if ( false === $json ) { 1386 $json = "[]"; 1387 } 1388 1389 echo $json; 1380 1390 } 1381 1391 1382 1392 wp_die(); … … 1402 1412 if ( ! isset( $results ) ) 1403 1413 wp_die( 0 ); 1404 1414 1405 echo wp_json_encode( $results ); 1415 $results = wp_json_encode( $results ); 1416 if ( false === $results ) { 1417 $results = "[]"; 1418 } 1419 1420 echo $results; 1406 1421 echo "\n"; 1407 1422 1408 1423 wp_die(); … … 1906 1921 case 'save' : 1907 1922 $msg = wp_save_image($attachment_id); 1908 1923 $msg = wp_json_encode($msg); 1924 if ( false === $msg ) { 1925 $msg = "{}"; 1926 } 1909 1927 wp_die( $msg ); 1910 1928 break; 1911 1929 case 'scale' : -
src/wp-admin/includes/class-wp-list-table.php
1081 1081 $response['total_pages_i18n'] = number_format_i18n( $this->_pagination_args['total_pages'] ); 1082 1082 } 1083 1083 1084 die( wp_json_encode( $response ) ); 1084 $response = wp_json_encode( $response ); 1085 if ( false === $response ) { 1086 $response = "[]"; 1087 } 1088 1089 die( $response ); 1085 1090 } 1086 1091 1087 1092 /** … … 1098 1103 ) 1099 1104 ); 1100 1105 1101 printf( "<script type='text/javascript'>list_args = %s;</script>\n", wp_json_encode( $args ) ); 1106 $args = wp_json_encode( $args ); 1107 if ( false === $args ) { 1108 $args = "[]"; 1109 } 1110 1111 printf( "<script type='text/javascript'>list_args = %s;</script>\n", $args ); 1102 1112 } 1103 1113 } -
src/wp-admin/includes/class-wp-themes-list-table.php
276 276 'total_pages' => ! empty( $this->_pagination_args['total_pages'] ) ? $this->_pagination_args['total_pages'] : 1, 277 277 ); 278 278 279 if ( is_array( $extra_args ) ) 279 if ( is_array( $extra_args ) ) { 280 280 $args = array_merge( $args, $extra_args ); 281 } 281 282 282 printf( "<script type='text/javascript'>var theme_list_args = %s;</script>\n", wp_json_encode( $args ) ); 283 $args = wp_json_encode( $args ); 284 if ( false === $args ) { 285 $args = "[]"; 286 } 287 288 printf( "<script type='text/javascript'>var theme_list_args = %s;</script>\n", $args ); 283 289 parent::_js_vars(); 284 290 } 285 291 } -
src/wp-admin/includes/media.php
1832 1832 $large_size_w = absint( get_option('large_size_w') ); 1833 1833 if( !$large_size_w ) 1834 1834 $large_size_w = 1024; 1835 1836 $plupload_init = wp_json_encode( $plupload_init ); 1837 if ( false === $plupload_init ) { 1838 $plupload_init = "[]"; 1839 } 1835 1840 ?> 1836 1841 var resize_height = <?php echo $large_size_h; ?>, resize_width = <?php echo $large_size_w; ?>, 1837 wpUploaderInit = <?php echo wp_json_encode( $plupload_init ); ?>;1842 wpUploaderInit = <?php echo $plupload_init; ?>; 1838 1843 </script> 1839 1844 1840 1845 <div id="plupload-upload-ui" class="hide-if-no-js"> -
src/wp-admin/includes/misc.php
616 616 <?php 617 617 wp_nonce_field( 'save-color-scheme', 'color-nonce', false ); 618 618 foreach ( $_wp_admin_css_colors as $color => $color_info ) : 619 619 $icon_colors = wp_json_encode( array( 'icons' => $color_info->icon_colors ) ); 620 if ( false === $icon_colors ) { 621 $icon_colors = "[]"; 622 } 620 623 ?> 621 624 <div class="color-option <?php echo ( $color == $current_color ) ? 'selected' : ''; ?>"> 622 625 <input name="admin_color" id="admin_color_<?php echo esc_attr( $color ); ?>" type="radio" value="<?php echo esc_attr( $color ); ?>" class="tog" <?php checked( $color, $current_color ); ?> /> 623 626 <input type="hidden" class="css_url" value="<?php echo esc_url( $color_info->url ); ?>" /> 624 <input type="hidden" class="icon_colors" value="<?php echo esc_attr( wp_json_encode( array( 'icons' => $color_info->icon_colors ) )); ?>" />627 <input type="hidden" class="icon_colors" value="<?php echo esc_attr( $icon_colors ); ?>" /> 625 628 <label for="admin_color_<?php echo esc_attr( $color ); ?>"><?php echo esc_html( $color_info->name ); ?></label> 626 629 <table class="color-palette"> 627 630 <tr> … … 665 668 $icon_colors = array( 'base' => '#999', 'focus' => '#2ea2cc', 'current' => '#fff' ); 666 669 } 667 670 668 echo '<script type="text/javascript">var _wpColorScheme = ' . wp_json_encode( array( 'icons' => $icon_colors ) ) . ";</script>\n"; 671 $icon_colors = wp_json_encode( array( 'icons' => $icon_colors ) ); 672 if ( false === $icon_colors ) { 673 $icon_colors = "[]"; 674 } 675 676 echo "<script type='text/javascript'>var _wpColorScheme = $icon_colors;</script>\n"; 669 677 } 670 678 add_action( 'admin_head', 'wp_color_scheme_settings' ); 671 679 -
src/wp-admin/includes/nav-menu.php
1 <?php1 \<?php 2 2 3 3 /** 4 4 * Create HTML list of nav menu input items. … … 356 356 if ( 'markup' == $response_format ) { 357 357 echo walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', array( get_post( $object_id ) ) ), 0, (object) $args ); 358 358 } elseif ( 'json' == $response_format ) { 359 echowp_json_encode(359 $json = wp_json_encode( 360 360 array( 361 361 'ID' => $object_id, 362 362 'post_title' => get_the_title( $object_id ), 363 363 'post_type' => get_post_type( $object_id ), 364 364 ) 365 365 ); 366 echo "\n"; 366 367 if ( false === $json ) { 368 $json = "[]"; 369 } 370 371 echo "$json\n"; 367 372 } 368 373 } 369 374 } elseif ( taxonomy_exists( $object_type ) ) { … … 373 378 echo walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', array( get_term( $object_id, $object_type ) ) ), 0, (object) $args ); 374 379 } elseif ( 'json' == $response_format ) { 375 380 $post_obj = get_term( $object_id, $object_type ); 376 echowp_json_encode(381 $json = wp_json_encode( 377 382 array( 378 383 'ID' => $object_id, 379 384 'post_title' => $post_obj->name, 380 385 'post_type' => $object_type, 381 386 ) 382 387 ); 383 echo "\n"; 388 389 if ( false === $json ) { 390 $json = "[]"; 391 } 392 393 echo "$json\n"; 384 394 } 385 395 } 386 396 … … 401 411 $var_by_ref = get_the_ID(); 402 412 echo walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', array( get_post( $var_by_ref ) ) ), 0, (object) $args ); 403 413 } elseif ( 'json' == $response_format ) { 404 echowp_json_encode(414 $json = wp_json_encode( 405 415 array( 406 416 'ID' => get_the_ID(), 407 417 'post_title' => get_the_title(), 408 418 'post_type' => get_post_type(), 409 419 ) 410 420 ); 411 echo "\n"; 421 422 if ( false === $json ) { 423 $json = "[]"; 424 } 425 426 echo "$json\n"; 412 427 } 413 428 } 414 429 } elseif ( 'taxonomy' == $matches[1] ) { … … 422 437 if ( 'markup' == $response_format ) { 423 438 echo walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', array( $term ) ), 0, (object) $args ); 424 439 } elseif ( 'json' == $response_format ) { 425 echowp_json_encode(440 $json = wp_json_encode( 426 441 array( 427 442 'ID' => $term->term_id, 428 443 'post_title' => $term->name, 429 444 'post_type' => $matches[2], 430 445 ) 431 446 ); 432 echo "\n"; 447 448 if ( false === $json ) { 449 $json = "[]"; 450 } 451 452 echo "$json\n"; 433 453 } 434 454 } 435 455 } -
src/wp-admin/includes/template.php
1958 1958 * @param array $args Arguments to be passed to the pointer JS (see wp-pointer.js). 1959 1959 */ 1960 1960 private static function print_js( $pointer_id, $selector, $args ) { 1961 if ( empty( $pointer_id ) || empty( $selector ) || empty( $args ) || empty( $args['content'] ) ) 1961 if ( empty( $pointer_id ) || empty( $selector ) || empty( $args ) || empty( $args['content'] ) ) { 1962 1962 return; 1963 } 1963 1964 1965 $options = wp_json_encode( $args ); 1966 if ( false === $options ) { 1967 $options = "false"; 1968 } 1969 1964 1970 ?> 1965 1971 <script type="text/javascript"> 1966 1972 //<![CDATA[ 1967 1973 (function($){ 1968 var options = <?php echo wp_json_encode( $args ); ?>, setup;1974 var options = <?php echo $options; ?>, setup; 1969 1975 1970 if ( ! options ) 1976 if ( ! options ) { 1971 1977 return; 1978 } 1972 1979 1973 1980 options = $.extend( options, { 1974 1981 close: function() { -
src/wp-admin/options-general.php
26 26 * @since 3.5.0 27 27 */ 28 28 function options_general_add_js() { 29 $home_url = wp_json_encode( get_home_url() ); 30 if ( false === $home_url ) { 31 $home_url = "''"; 32 } 29 33 ?> 30 34 <script type="text/javascript"> 31 35 //<![CDATA[ 32 36 jQuery(document).ready(function($){ 33 37 var $siteName = $( '#wp-admin-bar-site-name' ).children( 'a' ).first(), 34 homeURL = ( <?php echo wp_json_encode( get_home_url() ); ?> || '' ).replace( /^(https?:\/\/)?(www\.)?/, '' );38 homeURL = ( <?php echo $home_url; ?> || '' ).replace( /^(https?:\/\/)?(www\.)?/, '' ); 35 39 36 40 $( '#blogname' ).on( 'input', function() { 37 41 var title = $.trim( $( this ).val() ) || homeURL; -
src/wp-includes/class-wp-customize-manager.php
528 528 $settings['activeControls'][ $id ] = $control->active(); 529 529 } 530 530 531 $settings = wp_json_encode( $settings ); 532 if ( false === $settings ) { 533 $settings = "[]"; 534 } 535 531 536 ?> 532 537 <script type="text/javascript"> 533 var _wpCustomizeSettings = <?php echo wp_json_encode( $settings ); ?>;538 var _wpCustomizeSettings = <?php echo $settings; ?>; 534 539 </script> 535 540 <?php 536 541 } -
src/wp-includes/class-wp-customize-widgets.php
739 739 unset( $registered_widget['callback'] ); // may not be JSON-serializeable 740 740 } 741 741 742 $settings = wp_json_encode( $settings ); 743 if ( false === $settings ) { 744 $settings = "[]"; 745 } 746 742 747 $wp_scripts->add_data( 743 748 'customize-widgets', 744 749 'data', 745 sprintf( 'var _wpCustomizeWidgetsSettings = %s;', wp_json_encode( $settings ))750 sprintf( 'var _wpCustomizeWidgetsSettings = %s;', $settings ) 746 751 ); 747 752 } 748 753 … … 1055 1060 unset( $registered_widget['callback'] ); // may not be JSON-serializeable 1056 1061 } 1057 1062 1063 $settings = wp_json_encode( $settings ); 1064 if ( false === $settings ) { 1065 $settings = "[]"; 1066 } 1067 1058 1068 ?> 1059 1069 <script type="text/javascript"> 1060 var _wpWidgetCustomizerPreviewSettings = <?php echo wp_json_encode( $settings ); ?>;1070 var _wpWidgetCustomizerPreviewSettings = <?php echo $settings; ?>; 1061 1071 </script> 1062 1072 <?php 1063 1073 } -
src/wp-includes/class-wp-editor.php
518 518 ); 519 519 520 520 if ( ! empty( $mce_external_plugins ) ) { 521 self::$first_init['external_plugins'] = wp_json_encode( $mce_external_plugins ); 521 $mce_external_plugins_json = wp_json_encode( $mce_external_plugins ); 522 if ( false === $mce_external_plugins_json ) { 523 $mce_external_plugins_json = "[]"; 524 } 525 526 self::$first_init['external_plugins'] = $mce_external_plugins_json; 522 527 } 523 528 524 529 $suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; … … 1041 1046 $mce_translation['_dir'] = 'rtl'; 1042 1047 } 1043 1048 1049 $mce_translation = wp_json_encode( $mce_translation ); 1050 if ( false === $mce_translation ) { 1051 $mce_translation = "[]"; 1052 } 1053 1044 1054 if ( $json_only ) { 1045 return wp_json_encode( $mce_translation );1055 return $mce_translation; 1046 1056 } 1047 1057 1048 1058 $baseurl = self::$baseurl ? self::$baseurl : includes_url( 'js/tinymce' ); 1049 1059 1050 return "tinymce.addI18n( '$mce_locale', " . wp_json_encode( $mce_translation ) . ");\n" .1060 return "tinymce.addI18n( '$mce_locale', $mce_translation );\n" . 1051 1061 "tinymce.ScriptLoader.markDone( '$baseurl/langs/$mce_locale.js' );\n"; 1052 1062 } 1053 1063 -
src/wp-includes/class.wp-scripts.php
181 181 $l10n[$key] = html_entity_decode( (string) $value, ENT_QUOTES, 'UTF-8'); 182 182 } 183 183 184 $script = "var $object_name = " . wp_json_encode( $l10n ) . ';'; 184 $json = wp_json_encode( $l10n ); 185 if ( false === $json ) { 186 $json = "[]"; 187 } 185 188 189 $script = "var $object_name = $json;"; 190 186 191 if ( !empty($after) ) 187 192 $script .= "\n$after;"; 188 193 -
src/wp-includes/functions.php
2781 2781 */ 2782 2782 function wp_send_json( $response ) { 2783 2783 @header( 'Content-Type: application/json; charset=' . get_option( 'blog_charset' ) ); 2784 echo wp_json_encode( $response ); 2785 if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) 2784 2785 $json = wp_json_encode( $response ); 2786 if ( false === $json ) { 2787 $json = "false"; 2788 } 2789 2790 echo $json; 2791 2792 if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) { 2786 2793 wp_die(); 2787 else2794 } else { 2788 2795 die; 2796 } 2789 2797 } 2790 2798 2791 2799 /** -
src/wp-includes/media.php
1360 1360 $safe_type = esc_attr( $atts['type'] ); 1361 1361 $safe_style = esc_attr( $atts['style'] ); 1362 1362 1363 $data_json = wp_json_encode( $data ); 1364 if ( false === $data_json ) { 1365 $data_json = "[]"; 1366 } 1367 1363 1368 ob_start(); 1364 1369 1365 1370 if ( 1 === $instance ) { … … 1393 1398 } 1394 1399 ?></ol> 1395 1400 </noscript> 1396 <script type="application/json" class="wp-playlist-script"><?php echo wp_json_encode( $data )?></script>1401 <script type="application/json" class="wp-playlist-script"><?php echo $data_json; ?></script> 1397 1402 </div> 1398 1403 <?php 1399 1404 return ob_get_clean(); … … 2575 2580 'limitExceeded' => is_multisite() && ! is_upload_space_available() 2576 2581 ); 2577 2582 2578 $script = 'var _wpPluploadSettings = ' . wp_json_encode( $settings ) . ';'; 2583 $settings = wp_json_encode( $settings ); 2584 if ( false === $settings ) { 2585 $settings = "[]"; 2586 } 2579 2587 2588 $script = "var _wpPluploadSettings = $settings;"; 2589 2580 2590 if ( $data ) 2581 2591 $script = "$data\n$script"; 2582 2592 -
src/wp-includes/theme.php
1955 1955 ), 1956 1956 ); 1957 1957 1958 $script = 'var _wpCustomizeLoaderSettings = ' . wp_json_encode( $settings ) . ';'; 1958 $settings = wp_json_encode( $settings ); 1959 if ( false === $settings ) { 1960 $settings = "[]"; 1961 } 1962 $script = "var _wpCustomizeLoaderSettings = $settings;"; 1959 1963 1960 1964 $data = $wp_scripts->get_data( 'customize-loader', 'data' ); 1961 1965 if ( $data ) -
src/wp-includes/update.php
93 93 'multisite_enabled' => $multisite_enabled, 94 94 ); 95 95 96 $json = wp_json_encode( $translations ); 97 if ( false === $json ) { 98 $json = "[]"; 99 } 100 96 101 $post_body = array( 97 'translations' => wp_json_encode( $translations ),102 'translations' => $json, 98 103 ); 99 104 100 105 if ( is_array( $extra_stats ) ) … … 277 282 'plugins' => wp_json_encode( $to_send ), 278 283 'translations' => wp_json_encode( $translations ), 279 284 'locale' => wp_json_encode( $locales ), 280 'all' => wp_json_encode( true ),285 'all' => "true", 281 286 ), 282 287 'user-agent' => 'WordPress/' . $wp_version . '; ' . get_bloginfo( 'url' ) 283 288 ); … … 286 291 $options['body']['update_stats'] = wp_json_encode( $extra_stats ); 287 292 } 288 293 294 // Make sure wp_json_encode() was able to encode everything 295 foreach ( $options['body'] as &$item ) { 296 if ( false === $item ) { 297 $item = "[]"; 298 } 299 } 300 unset( $item ); 301 289 302 $url = $http_url = 'http://api.wordpress.org/plugins/update-check/1.1/'; 290 303 if ( $ssl = wp_http_supports( array( 'ssl' ) ) ) 291 304 $url = set_url_scheme( $url, 'https' ); … … 448 461 $options['body']['update_stats'] = wp_json_encode( $extra_stats ); 449 462 } 450 463 464 // Make sure wp_json_encode() was able to encode everything 465 foreach ( $options['body'] as &$item ) { 466 if ( false === $item ) { 467 $item = "[]"; 468 } 469 } 470 unset( $item ); 471 451 472 $url = $http_url = 'http://api.wordpress.org/themes/update-check/1.1/'; 452 473 if ( $ssl = wp_http_supports( array( 'ssl' ) ) ) 453 474 $url = set_url_scheme( $url, 'https' );