Index: path.module
===================================================================
--- path.module	(revision 17567)
+++ path.module	(revision 14634)
@@ -138,15 +138,13 @@
   }
   else if ($path && $alias) {
     $path = urldecode($path);
+    $path_count = db_result(db_query("SELECT COUNT(src) FROM {url_alias} WHERE src = '%s'", $path));
     $alias = urldecode($alias);
-    db_lock_table('url_alias');
-    $path_count = db_result(db_query("SELECT COUNT(src) FROM {url_alias} WHERE src = '%s'", $path));
     $alias_count = db_result(db_query("SELECT COUNT(dst) FROM {url_alias} WHERE dst = '%s'", $alias));
 
     // We have an insert:
     if ($path_count == 0 && $alias_count == 0) {
       db_query("INSERT INTO {url_alias} (src, dst) VALUES ('%s', '%s')", $path, $alias);
-      db_unlock_tables();
       drupal_clear_path_cache();
     }
     else if ($path_count >= 1 && $alias_count == 0) {
@@ -156,16 +154,13 @@
       else {
         db_query("INSERT INTO {url_alias} (src, dst) VALUES ('%s', '%s')", $path, $alias);
       }
-      db_unlock_tables();
       drupal_clear_path_cache();
     }
     else if ($path_count == 0 && $alias_count == 1) {
       db_query("UPDATE {url_alias} SET src = '%s' WHERE dst = '%s'", $path, $alias);
-      db_unlock_tables();
       drupal_clear_path_cache();
     }
     else if ($path_count == 1 && $alias_count == 1) {
-      db_unlock_tables();
       // This will delete the path that alias was originally pointing to:
       path_set_alias(NULL, $alias);
       path_set_alias($path);
