Index: menu_breadcrumb.module
===================================================================
--- menu_breadcrumb.module	(revision 403)
+++ menu_breadcrumb.module	(working copy)
@@ -300,13 +300,17 @@
  * Set the active menu according to the current path.
  */
 function menu_breadcrumb_init() {
+  global $language;
+  $menu_lang_check = variable_get('menu_breadcrumb_determine_menu_language', 0);
   if (variable_get('menu_breadcrumb_determine_menu', 1)) {
     // Find the set of menus containing a link for the current page.
     $menu_item = menu_get_item();
-    $result = db_query("SELECT mlid, menu_name FROM {menu_links} WHERE link_path = '%s'", $menu_item['href']);
-    $menu_link_menus = array();
+    $result = db_query("SELECT mlid, menu_name, options FROM {menu_links} WHERE link_path = '%s'", $menu_item['href']);
+    $menu_link_menus = $menu_link_options = array();
     while ($menu_link = db_fetch_array($result)) {
+      $temp_options = unserialize($menu_link['options']);
       $menu_link_menus[$menu_link['menu_name']] = TRUE;
+      $menu_link_options[$menu_link['menu_name']] = $temp_options['langcode'];
     }
 
     // Choose the highest-priority 'Enabled' menu.
@@ -318,7 +322,15 @@
       if ($is_pattern) {
         // Look for each of the $menu_link_menus in the pattern match cache.
         foreach (array_keys($menu_link_menus) as $menu_link_menu_name) {
-          if (array_key_exists($menu_link_menu_name, $match_cache)
+          if ($menu_lang_check
+              && array_key_exists($menu_link_menu_name, $match_cache)
+              && $match_cache[$menu_link_menu_name] == $menu_name
+              && $menu_link_options[$menu_link_menu_name] == $language->language) {
+            menu_set_active_menu_name($menu_link_menu_name);
+            break 2;
+          }
+          else if (!$menu_lang_check
+              && array_key_exists($menu_link_menu_name, $match_cache)
               && $match_cache[$menu_link_menu_name] == $menu_name) {
             menu_set_active_menu_name($menu_link_menu_name);
             break 2;
@@ -326,10 +338,17 @@
         }
       }
       else {
-        if (array_key_exists($menu_name, $menu_link_menus)) {
+        if ($menu_lang_check
+            && array_key_exists($menu_name, $menu_link_menus)
+            && $menu_link_options[$menu_name] == $language->language) {
           menu_set_active_menu_name($menu_name);
           break;
         }
+        else if (!$menu_lang_check &&
+                 array_key_exists($menu_name, $menu_link_menus)) {
+          menu_set_active_menu_name($menu_name);
+          break;
+        }
       }
     }
   }
@@ -360,13 +379,26 @@
  *   The settings form used by Menu breadcrumb.
  */
 function menu_breadcrumb_admin_settings_form() {
-  $form['menu_breadcrumb_determine_menu'] = array(
+  $form['menu_breadcrumb_determine_menu_fset'] = array(
+    '#type' => 'fieldset',
+  );
+
+  $form['menu_breadcrumb_determine_menu_fset']['menu_breadcrumb_determine_menu'] = array(
     '#type' => 'checkbox',
     '#title' => t('Use menu the page belongs to for the breadcrumb.'),
     '#description' => t('By default, Drupal 6 will use the Navigation menu for the breadcrumb. If you want to use the menu the active page belongs to for the breadcrumb, enable this option.'),
     '#default_value' => variable_get('menu_breadcrumb_determine_menu', 1),
   );
 
+  $form['menu_breadcrumb_determine_menu_fset']['menu_breadcrumb_determine_menu_language'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Also take current language into account when determening the menu item.'),
+    '#description' => t('If you use a separate menu for each language, and you have activated the 
+	<strong>Menu translation</strong> of <strong>i18n</strong> you can take the menu language into account. <strong>Each menu item must have a language set.</strong>'),
+    '#default_value' => variable_get('menu_breadcrumb_determine_menu_language', 0),
+    '#disabled' => !module_exists('i18nmenu'),
+  );
+  
   $form['menu_breadcrumb_append_node_title'] = array(
     '#type' => 'checkbox',
     '#title' => t('Append page title to breadcrumb'),
