From be3aa0ea61a67c6aff8e6f34fd5347182f911d83 Mon Sep 17 00:00:00 2001
From: Ben Coleman <b.coleman@accelerateddesign.com>
Date: Tue, 28 Jun 2011 14:06:03 -0400
Subject: [PATCH] Fix _taxonomy_menu_delete_all to delete all items

---
 taxonomy_menu.database.inc |   10 ++++------
 1 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/taxonomy_menu.database.inc b/taxonomy_menu.database.inc
index 1681765..8e8d439 100644
--- a/taxonomy_menu.database.inc
+++ b/taxonomy_menu.database.inc
@@ -57,13 +57,11 @@ function _taxonomy_menu_get_menu_items($vid) {
   *   vocabulary's id
   */
 function _taxonomy_menu_delete_all($vid) {
-  $menu_terms = _taxonomy_menu_get_menu_items($vid);
-  if (!empty($menu_terms)) {
-    foreach ($menu_terms as $tid => $mlid) {
-      db_query('DELETE FROM {menu_links} WHERE mlid = %d', $mlid);
-    }
-    db_query('DELETE FROM {taxonomy_menu} WHERE vid = %d', $vid);
+  $result = db_query('SELECT mlid FROM {taxonomy_menu} WHERE vid = %d', $vid);
+  while ($data = db_fetch_object($result)) {
+    db_query('DELETE FROM {menu_links} WHERE mlid = %d', $data->mlid);
   }
+  db_query('DELETE FROM {taxonomy_menu} WHERE vid = %d', $vid);
 }
 
 /**
-- 
1.7.4.msysgit.0

