Description: Term Splitting: Fix a reversal of parameters to wp_schedule_single_event() 
 The existing invalid cron entries will not be purged automatically (as the
 'timestamp' is never matched) so we do this ourselves.
Author: dd32@wordpress.org
Origin: upstream, https://core.trac.wordpress.org/changeset/33646
Bug: https://core.trac.wordpress.org/ticket/33423
Bug-Debian: https://bugs.debian.org/798350
Reviewed-by: Craig Small <csmall@debian.org>
Last-Update: 2015-09-08
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/wp-admin/includes/upgrade.php
+++ b/wp-admin/includes/upgrade.php
@@ -534,6 +534,9 @@
 	if ( $wp_current_db_version < 33055 )
 		upgrade_430();
 
+	if ( $wp_current_db_version < 33056 )
+		upgrade_431();
+
 	maybe_disable_link_manager();
 
 	maybe_disable_automattic_widgets();
@@ -1577,6 +1580,23 @@
 	}
 }
 
+/**
+ * Executes changes made in WordPress 4.3.1.
+ *
+ * @since 4.3.1
+ */
+function upgrade_431() {
+	// Fix incorrect cron entries for term splitting
+	$cron_array = _get_cron_array();
+	if ( isset( $cron_array['wp_batch_split_terms'] ) ) {
+		foreach ( $cron_array['wp_batch_split_terms'] as $timestamp_hook => $cron_data ) {
+			foreach ( $cron_data as $key => $args ) {
+				wp_unschedule_event( 'wp_batch_split_terms', $timestamp_hook, $args['args'] );
+			}
+		}
+	}
+}
+
 /**
  * Executes network-level upgrade routines.
  *
--- a/wp-includes/taxonomy.php
+++ b/wp-includes/taxonomy.php
@@ -4445,7 +4445,7 @@
  */
 function _wp_check_for_scheduled_split_terms() {
 	if ( ! get_option( 'finished_splitting_shared_terms' ) && ! wp_next_scheduled( 'wp_batch_split_terms' ) ) {
-		wp_schedule_single_event( 'wp_batch_split_terms', time() + MINUTE_IN_SECONDS );
+		wp_schedule_single_event( time() + MINUTE_IN_SECONDS, 'wp_batch_split_terms' );
 	}
 }
 
--- a/wp-includes/version.php
+++ b/wp-includes/version.php
@@ -11,7 +11,7 @@
  *
  * @global int $wp_db_version
  */
-$wp_db_version = 33055;
+$wp_db_version = 33056;
 
 /**
  * Holds the TinyMCE version
