Index: modules/menu/menu.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/menu/menu.module,v
retrieving revision 1.233
diff -u -p -r1.233 menu.module
--- modules/menu/menu.module	24 Sep 2010 00:37:43 -0000	1.233
+++ modules/menu/menu.module	15 Oct 2010 17:37:22 -0000
@@ -260,6 +260,13 @@ function menu_save($menu) {
     ->execute();
   menu_cache_clear_all();
 
+  // Make sure the menu is present in the active menus variable.
+  $active_menus = variable_get('menu_default_active_menus', array_keys(menu_list_system_menus()));
+  if (!in_array($menu['menu_name'], $active_menus)) {
+    $active_menus[] = $menu['menu_name'];
+    variable_set('menu_default_active_menus', $active_menus);
+  }
+
   switch ($status) {
     case SAVED_NEW:
       module_invoke_all('menu_insert', $menu);
@@ -299,6 +306,15 @@ function menu_delete($menu) {
   // Delete all links from the menu.
   menu_delete_links($menu['menu_name']);
 
+  // Remove menu from active menus variable.
+  $active_menus = variable_get('menu_default_active_menus', array_keys(menu_list_system_menus()));
+  foreach ($active_menus as $i => $menu_name) {
+    if ($menu['menu_name'] == $menu_name) {
+      unset($active_menus[$i]);
+    }
+  }
+  variable_set('menu_default_active_menus', $active_menus);
+
   // Delete the custom menu.
   db_delete('menu_custom')
     ->condition('menu_name', $menu['menu_name'])
