Index: wp-includes/class-wp-embed.php
===================================================================
--- wp-includes/class-wp-embed.php	(revision 29868)
+++ wp-includes/class-wp-embed.php	(working copy)
@@ -97,12 +97,14 @@
 	 * @param string $regex The regex that will be used to see if this handler should be used for a URL.
 	 * @param callback $callback The callback function that will be called if the regex is matched.
 	 * @param int $priority Optional. Used to specify the order in which the registered handlers will be tested (default: 10). Lower numbers correspond with earlier testing, and handlers with the same priority are tested in the order in which they were added to the action.
+	 * @return bool True if the callback is currently callable, false otherwise. Note - the callback will be registered regardless.
 	 */
 	public function register_handler( $id, $regex, $callback, $priority = 10 ) {
 		$this->handlers[$priority][$id] = array(
 			'regex'    => $regex,
 			'callback' => $callback,
 		);
+		return is_callable( $callback );
 	}
 
 	/**
Index: wp-includes/media.php
===================================================================
--- wp-includes/media.php	(revision 29868)
+++ wp-includes/media.php	(working copy)
@@ -2058,12 +2058,21 @@
 /**
  * Register an embed handler. This function should probably only be used for sites that do not support oEmbed.
  *
+ * This function will always register the requested handler, but will return false if the requested callback
+ * is currently uncallable.
+ *
  * @since 2.9.0
  * @see WP_Embed::register_handler()
+ *
+ * @param string $id An internal ID/name for the handler. Needs to be unique.
+ * @param string $regex The regex that will be used to see if this handler should be used for a URL.
+ * @param callback $callback The callback function that will be called if the regex is matched.
+ * @param int $priority Optional. Used to specify the order in which the registered handlers will be tested (default: 10). Lower numbers correspond with earlier testing, and handlers with the same priority are tested in the order in which they were added to the action.
+ * @return bool True if the callback is currently callable, false otherwise. Note - the callback will be registered regardless.
  */
 function wp_embed_register_handler( $id, $regex, $callback, $priority = 10 ) {
 	global $wp_embed;
-	$wp_embed->register_handler( $id, $regex, $callback, $priority );
+	return $wp_embed->register_handler( $id, $regex, $callback, $priority );
 }
 
 /**
