Index: src/wp-admin/update-core.php
===================================================================
--- src/wp-admin/update-core.php	(revision 26858)
+++ src/wp-admin/update-core.php	(working copy)
@@ -521,7 +521,12 @@
 	if ( $core || $plugins || $themes )
 		list_translation_updates();
 	unset( $core, $plugins, $themes );
-	do_action('core_upgrade_preamble');
+	/**
+	 * Fires after the core, plugin, and theme update forms.
+	 *
+	 * @since 2.9.0
+	 */
+	do_action( 'core_upgrade_preamble' );
 	echo '</div>';
 	include(ABSPATH . 'wp-admin/admin-footer.php');
 
@@ -627,5 +632,13 @@
 	require_once( ABSPATH . 'wp-admin/admin-footer.php' );
 
 } else {
-	do_action('update-core-custom_' . $action);
+	/**
+	 * Fires when no default conditions match the action parameter in the URL.
+	 *
+	 * The dynamic portion of the hook name, $action, refers to the action
+	 * parameter in the URL.
+	 *
+	 * @since 3.2.0
+	 */
+	do_action( "update-core-custom_{$action}" );
 }
