Index: wp-admin/admin-functions.php
===================================================================
--- wp-admin/admin-functions.php	(revision 3321)
+++ wp-admin/admin-functions.php	(working copy)
@@ -1249,7 +1249,9 @@
 		return $title;
 	}
 
-	$parent = get_admin_page_parent();
+	$hook = get_plugin_page_hook($plugin_page, $pagenow);
+
+	$parent = $parent1 = get_admin_page_parent();
 	if (empty ($parent)) {
 		foreach ($menu as $menu_array) {
 			if (isset ($menu_array[3])) {
@@ -1257,7 +1259,7 @@
 					$title = $menu_array[3];
 					return $menu_array[3];
 				} else
-					if (isset ($plugin_page) && ($plugin_page == $menu_array[2])) {
+					if (isset ($plugin_page) && ($plugin_page == $menu_array[2]) && ($hook == $menu_array[3])) {
 						$title = $menu_array[3];
 						return $menu_array[3];
 					}
@@ -1271,7 +1273,7 @@
 						$title = $submenu_array[3];
 						return $submenu_array[3];
 					} else
-						if (isset ($plugin_page) && ($plugin_page == $submenu_array[2])) {
+						if (isset ($plugin_page) && ($plugin_page == $submenu_array[2]) && (($parent == $pagenow) || ($parent == $plugin_page) || ($plugin_page == $hook) || (($pagenow == 'admin.php') && ($parent1 != $submenu_array[2])))) {
 							$title = $submenu_array[3];
 							return $submenu_array[3];
 						}
