Index: wp-admin/nav-menus.php
===================================================================
--- wp-admin/nav-menus.php	(revision 23453)
+++ wp-admin/nav-menus.php	(working copy)
@@ -264,8 +264,6 @@
 		// Get existing menu locations assignments
 		$locations = get_registered_nav_menus();
 		$menu_locations = get_nav_menu_locations();
-		if ( empty( $menu_locations ) || ! is_array( $menu_locations ) )
-			$menu_locations = array();
 
 		// Remove menu locations that have been unchecked
 		foreach ( $locations as $location => $description ) {
Index: wp-includes/nav-menu.php
===================================================================
--- wp-includes/nav-menu.php	(revision 23451)
+++ wp-includes/nav-menu.php	(working copy)
@@ -127,7 +127,8 @@
  */
 
 function get_nav_menu_locations() {
-	return get_theme_mod( 'nav_menu_locations' );
+	$locations = get_theme_mod( 'nav_menu_locations' );
+	return ( ! empty( $locations ) && is_array( $locations ) ) ? $locations : array();
 }
 
 /**
