Index: modules/trigger/trigger.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/trigger/trigger.module,v
retrieving revision 1.13.2.2
diff -u -p -r1.13.2.2 trigger.module
--- modules/trigger/trigger.module	30 Mar 2009 11:53:09 -0000	1.13.2.2
+++ modules/trigger/trigger.module	15 Jul 2009 20:56:26 -0000
@@ -215,16 +215,18 @@ function trigger_nodeapi(&$node, $op, $a
   static $objects;
   // Prevent recursion by tracking which operations have already been called.
   static $recursion;
+
+  $aids = _trigger_get_hook_aids('nodeapi', $op);
+  if (!$aids) {
+    return;
+  }
+
   // Support a subset of operations.
   if (!in_array($op, array('view', 'update', 'presave', 'insert', 'delete')) || isset($recursion[$op])) {
     return;
   }
   $recursion[$op] = TRUE;
 
-  $aids = _trigger_get_hook_aids('nodeapi', $op);
-  if (!$aids) {
-    return;
-  }
   $context = array(
     'hook' => 'nodeapi',
     'op' => $op,
@@ -246,6 +248,8 @@ function trigger_nodeapi(&$node, $op, $a
       actions_do($aid, $node, $context, $a3, $a4);
     }
   }
+
+  unset($recursion[$op]);
 }
 
 /**
