diff --git a/save_as_draft.install b/save_as_draft.install
index abd1061..8611b19 100644
--- a/save_as_draft.install
+++ b/save_as_draft.install
@@ -36,6 +36,8 @@ function save_as_draft_schema() {
 function save_as_draft_install() {
   // Create tables.
   drupal_install_schema('save_as_draft');
+  // Make sure save_as_draft hooks run after pathauto
+  db_query("UPDATE {system} SET weight = 10 WHERE name = 'save_as_draft'");
 }
 
 /**
diff --git a/save_as_draft.module b/save_as_draft.module
index 89753d8..4a402c0 100644
--- a/save_as_draft.module
+++ b/save_as_draft.module
@@ -106,6 +106,14 @@ function save_as_draft_form_alter(&$form, &$form_state, $form_id) {
         $form['buttons']['save_as_draft']['#disabled'] = FALSE;
         $form['buttons']['save_as_draft']['#default_value'] = $node->save_as_draft;
       }
+      if ($node->save_as_draft) {
+        if (isset($form['menu']) || isset($form['path'])) {
+          // Remove Menu Settings and URL Path Settings
+          unset($form['menu']);
+          unset($form['path']);
+          drupal_set_message(t('Note: Menu Settings and URL Path Settings cannot be modified while in draft mode.'));
+        }
+      }
     }
   }
 
@@ -209,12 +217,21 @@ function save_as_draft_nodeapi(&$node, $op, $teaser = NULL, $page = NULL) {
       case 'presave':
         $current_vid = db_result(db_query('SELECT vid FROM {node} WHERE nid = %d', $node->nid));
         $node->original_node = node_load($node->nid, $current_vid);
+        if ($node->save_as_draft) {
+          // Leave the menu item as-is
+          unset($node->menu);
+          // Preserve the current path
+          $node->path = $node->original_node->path;
+          // Tell pathauto to not update the path
+          $node->pathauto_perform_alias = FALSE;
+        }
         break;
       case 'update':
         if (isset($node->original_node)) {
           // Update node table's vid to the original value.
           db_query("UPDATE {node} SET vid = %d, title = '%s', status = %d, moderate = %d WHERE nid = %d", $node->original_node->vid, $node->original_node->title, $node->original_node->status, $node->original_node->moderate, $node->nid);
           drupal_set_message(t('Your changes have been saved as a draft.'));
+          drupal_set_message(t('Any changes that may have been made to Menu Settings or URL Path Settings were not saved.'));
         }
         break;
     }
