Index: user.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/user.module,v
retrieving revision 1.578
diff -u -r1.578 user.module
--- user.module	2 Feb 2006 01:51:54 -0000	1.578
+++ user.module	7 Feb 2006 06:18:36 -0000
@@ -770,10 +770,10 @@
         $items[] = array('path' => 'user/'. arg(1) .'/view', 'title' => t('view'),
           'access' => $view_access, 'type' => MENU_DEFAULT_LOCAL_TASK, 'weight' => -10);
         $items[] = array('path' => 'user/'. arg(1) .'/edit', 'title' => t('edit'),
-          'callback' => 'user_edit', 'access' => $admin_access || $user->uid == arg(1),
+          'callback' => 'user_edit', 'access' => ($admin_access && arg(1) != 1) || $user->uid == arg(1),
           'type' => MENU_LOCAL_TASK);
         $items[] = array('path' => 'user/'. arg(1) .'/delete', 'title' => t('delete'),
-          'callback' => 'user_edit', 'access' => $admin_access,
+          'callback' => 'user_edit', 'access' => ($admin_access && arg(1) != 1),
           'type' => MENU_CALLBACK);
 
         if (arg(2) == 'edit') {
@@ -1780,6 +1780,8 @@
 }
 
 function user_admin_account() {
+  global $user;
+
   $header = array(
     array('data' => t('Username'), 'field' => 'u.name'),
     array('data' => t('Status'), 'field' => 'u.status'),
@@ -1797,7 +1799,7 @@
                     $status[$account->status],
                     format_interval(time() - $account->created),
                     $account->access ? t('%time ago', array('%time' => format_interval(time() - $account->access))) : t('never'),
-                    l(t('edit'), "user/$account->uid/edit", array()));
+                    ($account->uid == 1 && $user->uid != 1 ? "" : l(t('edit'), "user/$account->uid/edit", array())));
   }
 
   $output = theme('table', $header, $rows);
