--- tinymce.module	2005-06-20 23:22:38.000000000 -0400
+++ tinymce.module	2005-06-20 23:45:13.000000000 -0400
@@ -252,6 +252,7 @@
     case 'log':
     case 'img_assist_pages':
     case 'caption':
+    case 'settings][access_excludes':
       unset($init);
       break;
 
@@ -467,6 +468,7 @@
   $group .= form_radios(t('Theme'), 'settings][theme', $edit->settings['theme'] ? $edit->settings['theme'] : 'simple',  _tinymce_get_themes(), t('Select the tinymce theme. The <em>advanced</em> theme will display advanced options below.'), FALSE ,array('onclick'=>'tinymceThemeOptions(this.value);'));
   $group .= form_radios(t('Make tinymce visible on'), 'settings][access', $edit->settings['access'], array(t('specific pages'), t('all textareas')));
   $group .= form_textarea(t('Specific pages'), 'settings][access_pages', $edit->settings['access_pages'] ? $edit->settings['access_pages'] : tinymce_help('admin/settings/tinymce#pages'), 40, 5, t("Enter one page per line as Drupal paths. The '*' character is a wildcard. Example paths are '<em>blog</em>' for the blog page and '<em>blog/*</em>' for every personal blog. '<em>&lt;front&gt;</em>' is the front page."));
+  $group .= form_textarea(t('Excluded pages'), 'settings][access_excludes', $edit->settings['access_excludes'] ? $edit->settings['access_excludes'] : tinymce_help('admin/settings/tinymce#pages'), 40, 5, t("Enter one page per line as Drupal paths. The '*' character is a wildcard. Example paths are '<em>blog</em>' for the blog page and '<em>blog/*</em>' for every personal blog. '<em>&lt;front&gt;</em>' is the front page."));
   $output .= form_group(t('Basic setup'), $group);
 
   $output .= t('<h3>Options</h3>');
@@ -625,12 +627,19 @@
   }
   else {
     $page_match = FALSE;
+    $path = drupal_get_path_alias($_GET['q']);
     $pages = $edit->settings['access_pages'] ? $edit->settings['access_pages'] : tinymce_help('admin/settings/tinymce#pages');
+    $excludes = $edit->settings['access_excludes'] ? $edit->settings['access_excludes'] : tinymce_help('admin/settings/tinymce#pages');
     if ($pages) {
-      $path = drupal_get_path_alias($_GET['q']);
       $regexp = '/^('. preg_replace(array('/(\r\n?|\n)/', '/\\\\\*/', '/(^|\|)\\\\<front\\\\>($|\|)/'), array('|', '.*', '\1'. variable_get('site_frontpage', 'node') .'\2'), preg_quote($pages, '/')) .')$/';
       $page_match = preg_match($regexp, $path);
     }
+    if ($page_match && $excludes) {
+      $regexp = '/^('. preg_replace(array('/(\r\n?|\n)/', '/\\\\\*/', '/(^|\|)\\\\<front\\\\>($|\|)/'), array('|', '.*', '\1'. variable_get('site_frontpage', 'node') .'\2'), preg_quote($excludes, '/')) .')$/';
+      if (preg_match($regexp, $path)) {
+        $page_match = FALSE;
+      }
+    }
     return $page_match;
   }
 }
