X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/0461a5f2e55c8d5f1fde96ca2e83117152573c7d..9e77185fafaf4e60e2b73821e0e4b9b1a11fb85f:/wp-includes/update.php diff --git a/wp-includes/update.php b/wp-includes/update.php index 3639907b..a9e25a87 100644 --- a/wp-includes/update.php +++ b/wp-includes/update.php @@ -25,7 +25,7 @@ function wp_version_check( $extra_stats = array(), $force_check = false ) { return; global $wpdb, $wp_local_package; - include ABSPATH . WPINC . '/version.php'; // include an unmodified $wp_version + include( ABSPATH . WPINC . '/version.php' ); // include an unmodified $wp_version $php_version = phpversion(); $current = get_site_transient( 'update_core' ); @@ -183,7 +183,7 @@ function wp_version_check( $extra_stats = array(), $force_check = false ) { * @return mixed Returns null if update is unsupported. Returns false if check is too soon. */ function wp_update_plugins( $extra_stats = array() ) { - include ABSPATH . WPINC . '/version.php'; // include an unmodified $wp_version + include( ABSPATH . WPINC . '/version.php' ); // include an unmodified $wp_version if ( defined('WP_INSTALLING') ) return false; @@ -264,12 +264,20 @@ function wp_update_plugins( $extra_stats = array() ) { */ $locales = apply_filters( 'plugins_update_check_locales', $locales ); + if ( defined( 'DOING_CRON' ) && DOING_CRON ) { + $timeout = 30; + } else { + // Three seconds, plus one extra second for every 10 plugins + $timeout = 3 + (int) ( count( $plugins ) / 10 ); + } + $options = array( - 'timeout' => ( ( defined('DOING_CRON') && DOING_CRON ) ? 30 : 3), + 'timeout' => $timeout, 'body' => array( 'plugins' => json_encode( $to_send ), 'translations' => json_encode( $translations ), 'locale' => json_encode( $locales ), + 'all' => json_encode( true ), ), 'user-agent' => 'WordPress/' . $wp_version . '; ' . get_bloginfo( 'url' ) ); @@ -296,13 +304,20 @@ function wp_update_plugins( $extra_stats = array() ) { $plugin = (object) $plugin; } unset( $plugin ); + foreach ( $response['no_update'] as &$plugin ) { + $plugin = (object) $plugin; + } + unset( $plugin ); if ( is_array( $response ) ) { $new_option->response = $response['plugins']; $new_option->translations = $response['translations']; + // TODO: Perhaps better to store no_update in a separate transient with an expiry? + $new_option->no_update = $response['no_update']; } else { $new_option->response = array(); $new_option->translations = array(); + $new_option->no_update = array(); } set_site_transient( 'update_plugins', $new_option ); @@ -322,7 +337,7 @@ function wp_update_plugins( $extra_stats = array() ) { * @return mixed Returns null if update is unsupported. Returns false if check is too soon. */ function wp_update_themes( $extra_stats = array() ) { - include ABSPATH . WPINC . '/version.php'; // include an unmodified $wp_version + include( ABSPATH . WPINC . '/version.php' ); // include an unmodified $wp_version if ( defined( 'WP_INSTALLING' ) ) return false; @@ -412,8 +427,15 @@ function wp_update_themes( $extra_stats = array() ) { */ $locales = apply_filters( 'themes_update_check_locales', $locales ); + if ( defined( 'DOING_CRON' ) && DOING_CRON ) { + $timeout = 30; + } else { + // Three seconds, plus one extra second for every 10 themes + $timeout = 3 + (int) ( count( $themes ) / 10 ); + } + $options = array( - 'timeout' => ( ( defined('DOING_CRON') && DOING_CRON ) ? 30 : 3), + 'timeout' => $timeout, 'body' => array( 'themes' => json_encode( $request ), 'translations' => json_encode( $translations ), @@ -459,8 +481,8 @@ function wp_update_themes( $extra_stats = array() ) { * @since 3.7.0 */ function wp_maybe_auto_update() { - include_once ABSPATH . '/wp-admin/includes/admin.php'; - include_once ABSPATH . '/wp-admin/includes/class-wp-upgrader.php'; + include_once( ABSPATH . '/wp-admin/includes/admin.php' ); + include_once( ABSPATH . '/wp-admin/includes/class-wp-upgrader.php' ); $upgrader = new WP_Automatic_Updater; $upgrader->run(); @@ -550,7 +572,7 @@ function wp_get_update_data() { } function _maybe_update_core() { - include ABSPATH . WPINC . '/version.php'; // include an unmodified $wp_version + include( ABSPATH . WPINC . '/version.php' ); // include an unmodified $wp_version $current = get_site_transient( 'update_core' );