--- modules/taxonomy/taxonomy.admin.inc	2010-06-17 06:44:45.000000000 -0700
+++ modules/taxonomy/taxonomy.adminNEW.inc	2010-07-01 17:10:42.000000000 -0700
@@ -203,7 +203,11 @@ function taxonomy_form_vocabulary_valida
     if (drupal_strlen($machine_name) > 21) {
       form_set_error('machine_name', t('The machine-readable name must not exceed 21 characters.'));
     }
-
+    // Do not allow machine names to conflict with taxonomy path arguments.
+    $disallowed = array('add', 'list');
+    if (in_array($machine_name, $disallowed)) {
+      form_set_error('machine_name', t('The machine-readable name cannot be "add" or "list".'));
+    }
     // Do not allow duplicate machine names.
     $vocabularies = taxonomy_get_vocabularies();
     foreach ($vocabularies as $vocabulary) {
