diff --git a/modules/taxonomy/taxonomy.pages.inc b/modules/taxonomy/taxonomy.pages.inc index 299c7bb..975ff12 100644 --- a/modules/taxonomy/taxonomy.pages.inc +++ b/modules/taxonomy/taxonomy.pages.inc @@ -118,7 +118,7 @@ function taxonomy_term_feed($term) { * @see taxonomy_menu() * @see taxonomy_field_widget_info() */ -function taxonomy_autocomplete($field_name, $tags_typed = '') { +function taxonomy_autocomplete($field_name = '', $tags_typed = '') { // If the request has a '/' in the search text, then the menu system will have // split it into multiple arguments, recover the intended $tags_typed. $args = func_get_args(); @@ -138,7 +138,7 @@ function taxonomy_autocomplete($field_name, $tags_typed = '') { $tags_typed = drupal_explode_tags($tags_typed); $tag_last = drupal_strtolower(array_pop($tags_typed)); - $matches = array(); + $term_matches = array(); if ($tag_last != '') { // Part of the criteria for the query come from the field's own settings. @@ -167,7 +167,6 @@ function taxonomy_autocomplete($field_name, $tags_typed = '') { $prefix = count($tags_typed) ? drupal_implode_tags($tags_typed) . ', ' : ''; - $term_matches = array(); foreach ($tags_return as $tid => $name) { $n = $name; // Term names containing commas or quotes must be wrapped in quotes. diff --git a/modules/taxonomy/taxonomy.test b/modules/taxonomy/taxonomy.test index 123bdce..270ed58 100644 --- a/modules/taxonomy/taxonomy.test +++ b/modules/taxonomy/taxonomy.test @@ -722,6 +722,13 @@ class TaxonomyTermTestCase extends TaxonomyWebTestCase { $this->assertFalse(field_info_field($field_name), format_string('Field %field_name does not exist.', array('%field_name' => $field_name))); $this->drupalGet('taxonomy/autocomplete/' . $field_name . '/' . $tag); $this->assertRaw($message, 'Autocomplete returns correct error message when the taxonomy field does not exist.'); + + // Test the autocomplete path without passing a field_name and terms. + // This should not trigger a PHP notice. + $field_name = ''; + $message = t("Taxonomy field @field_name not found.", array('@field_name' => $field_name)); + $this->drupalGet('taxonomy/autocomplete'); + $this->assertRaw($message, 'Autocomplete returns correct error message when no taxonomy field is given.'); } /**