Index: workflow.module
===================================================================
--- workflow.module	(revision 795)
+++ workflow.module	(working copy)
@@ -481,7 +481,9 @@
       $result = module_invoke_all('workflow', 'transition pre', $old_sid, $sid, $node);
       _workflow_write_history($node, $sid, $comment);
     }
-      $result = module_invoke_all('workflow', 'transition post', $old_sid, $sid, $node);
+    $result = module_invoke_all('workflow', 'transition post', $old_sid, $sid, $node);
+    db_query('DELETE FROM {workflow_scheduled_transition} WHERE nid = %d', $node->nid);
+
     return;
   }
 
@@ -1341,6 +1343,9 @@
       watchdog('content', '%type: scheduled transition of %title.', array('%type' => t($node->type), '%title' => $node->title), WATCHDOG_NOTICE, l(t('view'), 'node/'. $node->nid));
       $clear_cache = TRUE;
     }
+    else {
+      db_query('DELETE FROM {workflow_scheduled_transition} WHERE nid = %d', $node->nid);
+    }
   }
 
   if ($clear_cache) {
