Index: modules/forum/forum.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/forum/forum.module,v
retrieving revision 1.374
diff -u -p -r1.374 forum.module
--- modules/forum/forum.module	5 Jan 2007 05:32:23 -0000	1.374
+++ modules/forum/forum.module	8 Jan 2007 18:23:46 -0000
@@ -137,17 +137,6 @@ function forum_perm() {
 }
 
 /**
- * Implementation of hook_nodeapi().
- */
-function forum_nodeapi(&$node, $op, $teaser, $page) {
-  switch ($op) {
-    case 'delete revision':
-      db_query('DELETE FROM {forum} WHERE vid = %d', $node->vid);
-      break;
-  }
-}
-
-/**
  * Implementation of hook_taxonomy().
  */
 function forum_taxonomy($op, $type, $term = NULL) {
@@ -430,6 +419,13 @@ function forum_delete(&$node) {
 }
 
 /**
+ * Implementation of hook_delete_revision().
+ */
+function forum_delete_revision($node) {
+  db_query('DELETE FROM {forum} WHERE vid = %d', $node->vid);
+}
+
+/**
  * Returns a form for adding a container to the forum vocabulary
  *
  * @param $edit Associative array containing a container term to be added or edited.
Index: modules/node/node.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/node/node.module,v
retrieving revision 1.769
diff -u -p -r1.769 node.module
--- modules/node/node.module	7 Jan 2007 08:21:38 -0000	1.769
+++ modules/node/node.module	8 Jan 2007 18:23:48 -0000
@@ -1699,6 +1699,7 @@ function node_revision_delete($nid, $rev
         $node = node_load($nid, $revision);
 
         db_query("DELETE FROM {node_revisions} WHERE nid = %d AND vid = %d", $nid, $revision);
+        node_invoke($node, 'delete_revision');
         node_invoke_nodeapi($node, 'delete revision');
         drupal_set_message(t('Deleted %title revision %revision.', array('%title' => $node->title, '%revision' => $revision)));
         watchdog('content', t('@type: deleted %title revision %revision.', array('@type' => t($node->type), '%title' => $node->title, '%revision' => $revision)));
