diff --git a/modules/menu/menu.admin.inc b/modules/menu/menu.admin.inc
index 226c3b0..29ae67e 100644
--- a/modules/menu/menu.admin.inc
+++ b/modules/menu/menu.admin.inc
@@ -372,7 +372,10 @@ function menu_edit_item_validate($form, &$form_state) {
     drupal_set_message(t('The menu system stores system paths only, but will use the URL alias for display. %link_path has been stored as %normal_path', array('%link_path' => $item['link_path'], '%normal_path' => $normal_path)));
     $item['link_path'] = $normal_path;
   }
-  if (!url_is_external($item['link_path'])) {
+  if (url_is_external($item['link_path'])) {
+    unset($item['options']['query'], $item['options']['fragment']);
+  }
+  else {
     $parsed_link = parse_url($item['link_path']);
     if (isset($parsed_link['query'])) {
       $item['options']['query'] = drupal_get_query_array($parsed_link['query']);
