=== modified file 'modules/user/user.module'
--- modules/user/user.module	
+++ modules/user/user.module	
@@ -1468,9 +1468,13 @@ function user_view($uid = 0) {
   global $user;
 
   $account = user_load(array('uid' => $uid));
-  if ($account === FALSE || ($account->access == 0 && !user_access('administer users'))) {
+  if ($account === FALSE) {
     return drupal_not_found();
   }
+  // Only user administrators can see blocked accounts.
+  elseif ($account->status == 0 && !user_access('administer users')) {
+    return drupal_access_denied();
+  }
   // Retrieve and merge all profile fields:
   $fields = array();
   foreach (module_list() as $module) {
