? modules/comment/.comment.module.swp
? modules/comment/.nfs09150e530000022a
Index: modules/node/node.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/node/node.module,v
retrieving revision 1.995
diff -u -p -r1.995 node.module
--- modules/node/node.module	10 Nov 2008 05:19:46 -0000	1.995
+++ modules/node/node.module	11 Nov 2008 12:28:05 -0000
@@ -951,28 +951,25 @@ function node_save(&$node) {
   $node->changed = REQUEST_TIME;
 
   $node->timestamp = REQUEST_TIME;
-  $update_node = TRUE;
 
   // Generate the node table query and the node_revisions table query.
   if ($node->is_new) {
-    drupal_write_record('node', $node);
     _node_save_revision($node, $user->uid);
+    drupal_write_record('node', $node);
+    db_query('UPDATE {node_revisions} SET nid = %d WHERE vid = %d', $node->nid, $node->vid);
     $op = 'insert';
   }
   else {
     drupal_write_record('node', $node, 'nid');
     if (!empty($node->revision)) {
       _node_save_revision($node, $user->uid);
+      db_query('UPDATE {node} SET vid = %d WHERE nid = %d', $node->vid, $node->nid);
     }
     else {
       _node_save_revision($node, $user->uid, 'vid');
-      $update_node = FALSE;
     }
     $op = 'update';
   }
-  if ($update_node) {
-    db_query('UPDATE {node} SET vid = %d WHERE nid = %d', $node->vid, $node->nid);
-  }
 
   // Call the node specific callback (if any). This can be
   // node_invoke($node, 'insert') or
