Index: wp-includes/js/tinymce/wp-mce-link-includes.php
===================================================================
--- wp-includes/js/tinymce/wp-mce-link-includes.php	(revision 16253)
+++ wp-includes/js/tinymce/wp-mce-link-includes.php	(working copy)
@@ -26,18 +26,22 @@
 
 		array_unshift( $this->classes, 'wp-tab-bar' );
 		
-		$out = "<ul id='$this->id' class='" . esc_attr( implode( ' ', $this->classes ) ) . "'>";
-		foreach( $this->tabs as $tab ) {
-			if ( !isset($tab['url']) )
-				$tab['url'] = '';
+		$tabs = apply_filters( 'tab_bar_tabs', $this->tabs, $this );
 
-			$out.= "<li class='";
-			$out.= $this->selected == $tab['for'] ? 'wp-tab-active' : '';
-			$out.= "'><input type='hidden' class='wp-tab-for-id' value='{$tab['for']}' />";
-			$out.= "<a href='{$tab['url']}#{$tab['for']}'>";
-			$out.= "{$tab['label']}</a></li>";
+		if ( ! empty( $tabs ) ) {
+			$out = "<ul id='$this->id' class='" . esc_attr( implode( ' ', $this->classes ) ) . "'>";
+			foreach( $tabs as $tab ) {
+				if ( !isset($tab['url']) )
+					$tab['url'] = '';
+
+				$out.= "<li class='";
+				$out.= $this->selected == $tab['for'] ? 'wp-tab-active' : '';
+				$out.= "'><input type='hidden' class='wp-tab-for-id' value='{$tab['for']}' />";
+				$out.= "<a href='{$tab['url']}#{$tab['for']}'>";
+				$out.= "{$tab['label']}</a></li>";
+			}
+			$out.= "</ul>";
 		}
-		$out.= "</ul>";
 
 		if ( $echo )
 			echo $out;
@@ -182,6 +186,7 @@
 }
 
 function wp_link_ajax( $request ) {
+	do_action( 'wp_link_ajax' );
 	if ( !isset($request['type']) || !isset($request['name']) || !isset($request['preset']) )
 		die('-1');
 
@@ -212,4 +217,4 @@
 	echo json_encode( $json );
 	echo "\n";
 }
-?>
\ No newline at end of file
+?>
