--- includes/menu.inc.1.2	2008-02-20 23:33:01.000000000 +0100
+++ includes/menu.inc	2008-03-20 15:05:56.521200000 +0100
@@ -45,15 +45,23 @@ function translatable_translate_menu() {
           }
         }
       }
-
+
       $translation = translatable_translate_menu_item($mid);
-      if (isset($translation['title'])) {
-        $_menu['items'][$mid]['title'] = $translation['title'];
-      }
-      if (isset($translation['description'])) {
-        $_menu['items'][$mid]['description'] = $translation['description'];
-      }
-
+      if ($translation != NULL) {
+      	if (isset($translation['title'])) {
+          $_menu['items'][$mid]['title'] = $translation['title'];
+        }
+    	if (isset($translation['description'])) {
+          $_menu['items'][$mid]['description'] = $translation['description'];
+      	}
+      }
+      // if no translation is available, current entry is a menu ITEM and we
+	  // actually are trying to translate, then unset the current item
+	  // @todo: this behaviour should be made configurable (for different menus?)
+	  elseif ($item['pid'] != 0 && translatable_get_locale() != translatable_get_default_locale()) {
+		unset($_menu['items'][$mid]);
+	  }
+
       if ($active_item) {
         $_menu['items'][$mid]['path'] = $_GET['q'];
         $locations = translatable_get_breadcrumb($mid);
