diff --git a/i18n_menu/i18n_menu.module b/i18n_menu/i18n_menu.module
index 64158f7..fc2411c 100644
--- a/i18n_menu/i18n_menu.module
+++ b/i18n_menu/i18n_menu.module
@@ -363,6 +363,8 @@ function i18n_menu_localize_tree($tree, $langcode = NULL) {
       if ($menulang = i18n_object_langcode($link)) {
         if ($menulang != $langcode) {
           unset($tree[$index]);
+          // Skip any further processing of the item.
+          continue;
         }
       }
       else {
@@ -375,12 +377,12 @@ function i18n_menu_localize_tree($tree, $langcode = NULL) {
         if ($description = _i18n_menu_link_description($link, $langcode)) {
           $item['link']['localized_options']['attributes']['title'] = $description;
         }
-        // Localize subtree.
-        if (!empty($item['below'])) {
-          $item['below'] = i18n_menu_localize_tree($item['below'], $langcode);
-        }
       }
     }
+    // Localize subtree.
+    if (!empty($item['below'])) {
+      $item['below'] = i18n_menu_localize_tree($item['below'], $langcode);
+    }
   }
   return $tree;
 }
