Index: ./modules/profile/profile.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/profile/profile.module,v
retrieving revision 1.219
diff -u -p -r1.219 profile.module
--- ./modules/profile/profile.module	5 Sep 2007 18:11:27 -0000	1.219
+++ ./modules/profile/profile.module	4 Oct 2007 20:43:34 -0000
@@ -369,6 +369,14 @@ function profile_field_form_validate($fo
   if (db_result(db_query("SELECT fid FROM {profile_fields} WHERE name = '%s'". $query_suffix, $args2))) {
     form_set_error('name', t('The specified name is already in use.'));
   }
+  if ($form_state['values']['visibility'] == PROFILE_HIDDEN) {
+    if ($form_state['values']['required']) {
+      form_set_error('required', t('A hidden field cannot be required.'));
+    }
+    if ($form_state['values']['register']) {
+      form_set_error('register', t('A hidden field cannot be set to visible on the user registration form.'));
+    }
+  }
 }
 
 /**
