diff --git a/rules.module b/rules.module
index 038288e..834dba9 100644
--- a/rules.module
+++ b/rules.module
@@ -1020,10 +1020,10 @@ function rules_invoke_event() {
   $event_name = $args[0];
   unset($args[0]);
   // We maintain a whitelist of configured events to reduces the number of cache
-  // reads. If the whitelist is empty we proceed and it is rebuilt.
+  // reads. If the whitelist is not in the cache we proceed and it is rebuilt.
   if (rules_event_invocation_enabled()) {
     $whitelist = rules_get_cache('rules_event_whitelist');
-    if ((empty($whitelist) || isset($whitelist[$event_name])) && $event = rules_get_cache('event_' . $event_name)) {
+    if ((($whitelist === FALSE) || isset($whitelist[$event_name])) && $event = rules_get_cache('event_' . $event_name)) {
       $event->executeByArgs($args);
     }
   }
