diff -up notify-5.x-1.2/notify.module /tmp
--- notify-5.x-1.2/notify.module        2009-01-13 17:10:53.000000000 -0800
+++ /tmp/notify.module  2009-02-02 13:19:31.000000000 -0800
@@ -71,12 +71,13 @@ function notify_cron() {
   $send_last = variable_get('notify_send_last', 0);
   $send_interval = variable_get('notify_send', 86400);
   $send_hour = variable_get('notify_send_hour', date('G', variable_get('notify_send_last', 0)));
-  if ( (time() - $send_last > $send_interval)
-    && (date('G', time()) > $send_hour)
+  variable_set('notify_send_start', $send_start = time());
+  if ( ($send_start - $send_last > $send_interval)
+    && (date('G', $send_start) > $send_hour)
     && ($send_interval != -1) //special case of settings to send 'never'
       ) {
     _notify_send();
-    variable_set('notify_send_last', time());
+    variable_set('notify_send_last', $send_start);
   }
 }

@@ -256,8 +257,9 @@ function notify_admin_users_submit($form
   drupal_set_message(t('Notify settings saved.'));

   if ($form_values['flush']) {
+    variable_set('notify_send_start', $send_start = time());
     list($num_sent, $num_failed) = _notify_send();
-    variable_set('notify_send_last', time());
+    variable_set('notify_send_last', $send_start);

     if ($num_sent > 0) {
       drupal_set_message(t('!count pending notification e-mails have been sent.', array('!count' => $num_sent)));
@@ -351,7 +353,8 @@ function _notify_content_html ($node, $n
  * TODO: Needs some cleanup and themability.
  */
 function _notify_send() {
-  $period = variable_get('notify_send_last', time() - variable_get('notify_send', 86400));
+  $now = variable_get('notify_send_start', time());
+  $period = variable_get('notify_send_last', $now - variable_get('notify_send', 86400));
   $separator = '------------------------------------------------------------------------------';
   $mini_separator = '---';

