Index: modules/field/field.info.inc
===================================================================
RCS file: /cvs/drupal/drupal/modules/field/field.info.inc,v
retrieving revision 1.28
diff -u -p -r1.28 field.info.inc
--- modules/field/field.info.inc	13 Nov 2009 11:59:14 -0000	1.28
+++ modules/field/field.info.inc	13 Nov 2009 23:09:30 -0000
@@ -454,6 +454,8 @@ function field_info_bundles($obj_type = 
 /**
  * Return array of all field data, keyed by field name.
  *
+ * @param $obj_type
+ *   (optional) The type of object; e.g. 'node' or 'user'.
  * @param $bundle_type
  *   (optional) The bundle type on which to filter the list of fields. In the
  *   case of nodes, this is the node type.
@@ -466,7 +468,7 @@ function field_info_bundles($obj_type = 
  *   property, bundles, which is an array of all the bundles to which
  *   this field belongs.
  */
-function field_info_fields($bundle_type = NULL, $field = NULL, $field_type = NULL) {
+function field_info_fields($obj_type = NULL, $bundle_type = NULL, $field = NULL, $field_type = NULL) {
   // Build the list of fields to be used for retrieval.
   if (isset($field)) {
     if (is_string($field)) {
@@ -474,8 +476,8 @@ function field_info_fields($bundle_type 
     }
     $fields = array($field['field_name'] => $field);
   }
-  elseif (isset($bundle_type)) {
-    $instances = field_info_instances($bundle_type);
+  elseif (isset($obj_type)) {
+    $instances = field_info_instances($obj_type, $bundle_type);
     $fields = array();
     foreach ($instances as $field_name => $instance) {
       $fields[$field_name] = field_info_field($field_name);
Index: modules/file/file.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/file/file.module,v
retrieving revision 1.11
diff -u -p -r1.11 file.module
--- modules/file/file.module	31 Oct 2009 16:06:36 -0000	1.11
+++ modules/file/file.module	13 Nov 2009 23:09:30 -0000
@@ -857,7 +857,7 @@ function file_icon_map($file) {
  *   An integer value.
  */
 function file_get_file_reference_count($file, $field = NULL, $field_type = 'file') {
-  $fields = field_info_fields(NULL, $field, $field_type);
+  $fields = field_info_fields(NULL, NULL, $field, $field_type);
   $types = entity_get_info();
   $reference_count = 0;
 
@@ -915,7 +915,7 @@ function file_get_file_reference_count($
  */
 function file_get_file_references($file, $field = NULL, $age = FIELD_LOAD_REVISION, $field_type = 'file') {
   $references = drupal_static(__FUNCTION__, array());
-  $fields = field_info_fields(NULL, $field, $field_type);
+  $fields = field_info_fields(NULL, NULL, $field, $field_type);
 
   foreach ($fields as $field_name => $file_field) {
     if (!isset($references[$field_name])) {
