Index: modules/taxonomy/taxonomy.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/taxonomy/taxonomy.module,v
retrieving revision 1.577
diff -u -p -r1.577 taxonomy.module
--- modules/taxonomy/taxonomy.module	11 Feb 2010 17:44:47 -0000	1.577
+++ modules/taxonomy/taxonomy.module	4 Mar 2010 12:16:50 -0000
@@ -1058,6 +1058,7 @@ function taxonomy_field_info() {
             'parent' => '0',
           ),
         ),
+        'options_list_callback' => '',
       ),
     ),
   );
@@ -1094,7 +1095,14 @@ function taxonomy_field_widget_info_alte
  * Implements hook_options_list().
  */
 function taxonomy_options_list($field) {
-  return taxonomy_allowed_values($field);
+  if (!empty($field['settings']['options_list_callback'])) {
+    $function = $field['settings']['options_list_callback'];
+    $options = $function($field);
+  }
+  else {
+    $options = taxonomy_allowed_values($field);
+  }
+  return $options;
 }
 
 /**
