diff options
Diffstat (limited to 'modules/field/field.info.inc')
-rw-r--r-- | modules/field/field.info.inc | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/modules/field/field.info.inc b/modules/field/field.info.inc index 3b36c0355..e7eaaf0c6 100644 --- a/modules/field/field.info.inc +++ b/modules/field/field.info.inc @@ -680,16 +680,16 @@ function field_info_field_by_ids() { */ function field_info_instances($entity_type = NULL, $bundle_name = NULL) { $info = _field_info_collate_fields(); - if (!isset($entity_type)) { - return $info['instances']; + + if (isset($entity_type) && isset($bundle_name)) { + return isset($info['instances'][$entity_type][$bundle_name]) ? $info['instances'][$entity_type][$bundle_name] : array(); } - if (!isset($bundle_name)) { - return $info['instances'][$entity_type]; + elseif (isset($entity_type)) { + return isset($info['instances'][$entity_type]) ? $info['instances'][$entity_type] : array(); } - if (isset($info['instances'][$entity_type][$bundle_name])) { - return $info['instances'][$entity_type][$bundle_name]; + else { + return $info['instances']; } - return array(); } /** |