diff --git a/pathauto.inc b/pathauto.inc
index 05cac7d..949cfcc 100644
--- a/pathauto.inc
+++ b/pathauto.inc
@@ -463,9 +463,9 @@ function pathauto_alias_uniquify(&$alias, $source, $langcode) {
 }
 
 /**
- * Verify if the given path is a valid menu callback.
+ * Check if the given path already exists as menu callback or in filesystem.
  *
- * Taken from menu_execute_active_handler().
+ * We don't want to assign an automatic alias to a preexisting path.
  *
  * @param $path
  *   A string containing a relative path.
@@ -473,25 +473,26 @@ function pathauto_alias_uniquify(&$alias, $source, $langcode) {
  *   TRUE if the path already exists.
  */
 function _pathauto_path_is_callback($path) {
-  // We need to use a try/catch here because of a core bug which will throw an
-  // exception if $path is something like 'node/foo/bar'.
+  // Catch an exception thrown by a core bug if on postgres, $path is something
+  // like 'node/foo/bar'. See http://drupal.org/node/1302158
   // @todo Remove when http://drupal.org/node/1003788 is fixed in core.
   try {
+    // Check if the given path already is a valid menu callback
     $menu = menu_get_item($path);
+    if (isset($menu['path']) && $menu['path'] == $path) {
+      return TRUE;
+    }
   }
   catch (Exception $e) {
-    return FALSE;
   }
 
-  if (isset($menu['path']) && $menu['path'] == $path) {
-    return TRUE;
-  }
-  elseif (is_file(DRUPAL_ROOT . '/' . $path) || is_dir(DRUPAL_ROOT . '/' . $path)) {
-    // Do not allow existing files or directories to get assigned an automatic
-    // alias. Note that we do not need to use is_link() to check for symbolic
-    // links since this returns TRUE for either is_file() or is_dir() already.
+  // Check otherwise if the path already exists on the filesystem.
+  // Note that we do not need to use is_link() to check for symbolic links
+  // since this returns TRUE for either is_file() or is_dir() already.
+  if (is_file(DRUPAL_ROOT . '/' . $path) || is_dir(DRUPAL_ROOT . '/' . $path)) {
     return TRUE;
   }
+
   return FALSE;
 }
 
