Index: auth/services_keyauth/services_keyauth.admin.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/services/auth/services_keyauth/Attic/services_keyauth.admin.inc,v
retrieving revision 1.1.2.2.2.9
diff -u -r1.1.2.2.2.9 services_keyauth.admin.inc
--- auth/services_keyauth/services_keyauth.admin.inc	5 Dec 2010 03:08:51 -0000	1.1.2.2.2.9
+++ auth/services_keyauth/services_keyauth.admin.inc	7 Dec 2010 01:27:08 -0000
@@ -53,9 +53,14 @@
 
   $key_kid = isset($key->kid) ? $key->kid : '';
   $key_title = isset($key->title) ? $key->title : '';
+  $domain = isset($key->domain) ? $key->domain : '',
   $form['kid'] = array(
-    '#type'           => 'hidden',
-    '#default_value'  => $key_kid,
+    '#type' => 'value',
+    '#value'  => $key_kid,
+  );
+  $form['previous_domain'] = array(
+    '#type' => 'value',
+    '#value'  => $domain,
   );
 
   $accessible_methods = array();
@@ -80,7 +85,7 @@
   $form['domain'] = array(
     '#title'          => t('Allowed domain'),
     '#type'           => 'textfield',
-    '#default_value'  => isset($key->domain) ? $key->domain : '',
+    '#default_value'  => $domain,
     '#description'    => t('External domain allowed to use this key.'),
     '#required'       => TRUE,
   );
@@ -110,10 +115,12 @@
  * Validate callback for services_keyauth_admin_keys_form().
  */
 function services_keyauth_admin_keys_form_validate($form, &$form_state) {
-  $domain = $form_state['values']['domain'];
-  $is_existing =  db_result(db_query("SELECT count(*) FROM {services_keys} WHERE domain = '%s'", $domain));
-  if ($is_existing) {
-    form_set_error('domain', t('Domain @domain already exists.', array('@domain', $domain)));
+  $domain = trim($form_state['values']['domain']);
+  $previous_domain = trim($form_state['values']['previous_domain']);
+  if ($previous_domain != $domain) {
+    if (db_result(db_query("SELECT count(*) FROM {services_keys} WHERE domain = '%s'", $domain))) {
+      form_set_error('domain', t('Domain @domain already exists.', array('@domain', $domain)));
+    }
   }
 }
 
