Index: includes/path.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/path.inc,v
retrieving revision 1.72
diff -u -p -r1.72 path.inc
--- includes/path.inc	30 Nov 2010 01:05:24 -0000	1.72
+++ includes/path.inc	13 Jan 2011 18:40:13 -0000
@@ -459,14 +459,17 @@ function path_delete($criteria) {
   if (!is_array($criteria)) {
     $criteria = array('pid' => $criteria);
   }
-  $path = path_load($criteria);
-  $query = db_delete('url_alias');
-  foreach ($criteria as $field => $value) {
-    $query->condition($field, $value);
+
+  $paths = array();
+  while ($path = path_load($criteria)) {
+    $paths[$path['pid']] = $path;
+    module_invoke_all('path_delete', $path);
+    drupal_clear_path_cache($path['source']);
   }
-  $query->execute();
-  module_invoke_all('path_delete', $path);
-  drupal_clear_path_cache($path['source']);
+
+  db_delete('url_alias')
+    ->condition('pid', array_keys($paths), 'IN')
+    ->execute();
 }
 
 /**
