diff --git a/sites/all/modules/user_backreference/user_backreference.module b/sites/all/modules/user_backreference/user_backreference.module
index 9aa0fa8..09497f7 100644
--- a/sites/all/modules/user_backreference/user_backreference.module
+++ b/sites/all/modules/user_backreference/user_backreference.module
@@ -137,6 +137,11 @@ function user_backreference_form_profile($edit, $account, $category, $register =
     '#title' => t('Related content'),
   );
   
+  $form['user_backreference_fields'] = array(
+    '#type' => 'value',
+    '#value' => array(),
+  );
+
   $fields = user_backreference_get_fields();
   
   // @todo: what happens with a field on more than one type?
@@ -156,6 +161,9 @@ function user_backreference_form_profile($edit, $account, $category, $register =
   }
   
   foreach ($fields as $field_name => $field) {
+    // Add the field name to the array.
+    $form['user_backreference_fields']['#value'][] = $field_name;
+
     // Get CCK's database info for this field and hence table and field names.
     $db_info = content_database_info($field);
     $table = $db_info['table'];
@@ -192,6 +200,14 @@ function user_backreference_form_profile($edit, $account, $category, $register =
  * Helper for hook_user 'insert' and 'update': save our form data.
  */
 function user_backreference_save_profile($edit, $account, $category) {
+   // Check for the presence of our hidden value set in user_backreference_form_profile().
+   // If it is not set, then we have come here from something that is not a
+   // user edit form, eg a user admin operation such as 'block user', and
+   // have no data to save. Leave now!
+   if (!isset($edit['user_backreference_fields'])) {
+     return;
+   }
+
   //dsm($edit);
   
   // @warning
