Index: wp-login.php
===================================================================
--- wp-login.php	(revision 17347)
+++ wp-login.php	(working copy)
@@ -584,9 +584,9 @@
 		}
 
 		// If the user doesn't belong to a blog, send them to user admin. If the user can't edit posts, send them to their profile.
-		if ( is_multisite() && !get_active_blog_for_user($user->id) )
+		if ( empty( $redirect_to ) && is_multisite() && !get_active_blog_for_user($user->id) )
 			$redirect_to = user_admin_url();
-		elseif ( is_multisite() && !$user->has_cap('read') )
+		elseif ( empty( $redirect_to ) && is_multisite() && !$user->has_cap('read') )
 			$redirect_to = user_admin_url();
 		elseif ( !$user->has_cap('edit_posts') && ( empty( $redirect_to ) || $redirect_to == 'wp-admin/' || $redirect_to == admin_url() ) )
 			$redirect_to = admin_url('profile.php');
