Index: faq.admin.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/faq/Attic/faq.admin.inc,v
retrieving revision 1.1.2.22
diff -u -r1.1.2.22 faq.admin.inc
--- faq.admin.inc	30 Nov 2009 20:57:00 -0000	1.1.2.22
+++ faq.admin.inc	8 Mar 2010 05:06:53 -0000
@@ -45,6 +45,12 @@
     '#rows' => 5,
   );
   $form['body_filter']['faq_description_format'] = filter_form(variable_get('faq_description_format', ''), NULL, array('faq_description_format'));
+  $form['faq_custom_breadcrumbs'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Create custom breadcrumbs for the FAQ'),
+    '#description' => t('This option set the breadcrumb path to "%home > %faqtitle > category trail".', array('%home' => t('Home'), '%faqtitle' => variable_get('faq_title', 'Frequently Asked Questions'))),
+    '#default_value' => variable_get('faq_custom_breadcrumbs', TRUE),
+  );
 
   return system_settings_form($form);
 }
Index: faq.install
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/faq/Attic/faq.install,v
retrieving revision 1.1.4.16.2.28
diff -u -r1.1.4.16.2.28 faq.install
--- faq.install	29 Nov 2009 21:50:34 -0000	1.1.4.16.2.28
+++ faq.install	8 Mar 2010 05:06:53 -0000
@@ -88,6 +88,9 @@
   // Block settings.
   variable_del('faq_block_recent_faq_count');
   variable_del('faq_block_random_faq_count');
+  // Custom breadcrumbs control
+  variable_del('faq_custom_breadcrumbs');
+  
   // Deprecated.
   variable_del('faq_more_link');
 
Index: faq.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/faq/faq.module,v
retrieving revision 1.1.4.52.2.128
diff -u -r1.1.4.52.2.128 faq.module
--- faq.module	23 Dec 2009 18:13:12 -0000	1.1.4.52.2.128
+++ faq.module	8 Mar 2010 05:06:53 -0000
@@ -1324,18 +1324,22 @@
  */
 function faq_set_breadcrumb($term = NULL) {
   $breadcrumb = array();
-
-  if (module_exists("taxonomy") && $term) {
-    $breadcrumb[] = l(faq_tt("taxonomy:term:$term->tid:name", $term->name), 'faq/'. $term->tid);
-    while ($parents = taxonomy_get_parents($term->tid)) {
-      $term = array_shift($parents);
+  if (variable_get('faq_custom_breadcrumbs', TRUE)) {
+    if (module_exists("taxonomy") && $term) {
       $breadcrumb[] = l(faq_tt("taxonomy:term:$term->tid:name", $term->name), 'faq/'. $term->tid);
+      while ($parents = taxonomy_get_parents($term->tid)) {
+        $term = array_shift($parents);
+        $breadcrumb[] = l(faq_tt("taxonomy:term:$term->tid:name", $term->name), 'faq/'. $term->tid);
+      }
     }
-  }
-  $breadcrumb[] = l(variable_get('faq_title', 'Frequently Asked Questions'), 'faq');
-  $breadcrumb[] = l(t('Home'), NULL);
-  $breadcrumb = array_reverse($breadcrumb);
-  return drupal_set_breadcrumb($breadcrumb);
+    $breadcrumb[] = l(variable_get('faq_title', 'Frequently Asked Questions'), 'faq');
+    $breadcrumb[] = l(t('Home'), NULL);
+    $breadcrumb = array_reverse($breadcrumb);
+    return drupal_set_breadcrumb($breadcrumb);
+  }
+  // This is also used to set the breadcrumbs in the faq_preprocess_page()
+  // so we need to return a valid trail.
+  return drupal_get_breadcrumb();
 }
 
 /**
