diff --git a/lib/cronlib.php b/lib/cronlib.php
index <HASH>..<HASH> 100644
--- a/lib/cronlib.php
+++ b/lib/cronlib.php
@@ -711,11 +711,11 @@ function notify_login_failures() {
             //emailing the admins directly rather than putting these through the messaging system
             email_to_user($admin,get_admin(), $subject, $body);
         }
-
-        // Update lastnotifyfailure with current time
-        set_config('lastnotifyfailure', time());
     }
 
+    // Update lastnotifyfailure with current time
+    set_config('lastnotifyfailure', time());
+
     // Finally, delete all the temp records we have created in cache_flags
     $DB->delete_records_select('cache_flags', "flagtype IN ('login_failure_by_ip', 'login_failure_by_info')");
MDL-<I> cron: Fixing related problem with setting of lastnotifyfailure

Because of a flaw in the logic, lastnotifyfailure was not set unless
there was a failure. This means that after 1 hour of no failures, the
function would execute every cron cycle, which has a pretty high cost
on large sites.