diff -dur newsletter-orig/includes/newsletter.admin.inc newsletter/includes/newsletter.admin.inc
--- newsletter-orig/includes/newsletter.admin.inc	2011-11-22 13:22:45.000000000 +0000
+++ newsletter/includes/newsletter.admin.inc	2012-02-16 12:09:40.000000000 +0000
@@ -747,6 +747,11 @@
     '#default_value' => check_plain($list->send_rate),
     '#title' => t('Send Rate'),
   );
+  $form['always_send'] = array(
+    '#type' => 'checkbox',
+    '#default_value' => FALSE,
+    '#title' => t('Send newsletter even if there are no nodes to list.'),
+  );
   $form['send_rate_custom'] = array(
     '#attributes' => array('id' => array('send_rate_custom')),
     '#type' => 'textfield',
diff -dur newsletter-orig/includes/newsletter.mail.inc newsletter/includes/newsletter.mail.inc
--- newsletter-orig/includes/newsletter.mail.inc	2011-11-22 13:22:45.000000000 +0000
+++ newsletter/includes/newsletter.mail.inc	2012-02-16 12:29:01.000000000 +0000
@@ -268,9 +268,9 @@
         ? $this->getSubscriberNodes($subscriber)
         : $this->nodes;
 
-      if (empty($nodes)) {
+      if (empty($nodes) && ($this->list->always_send == 0)) {
         continue;
       }
       $params['nodes'] = $nodes;
       if ($i>=$mails_to_send) {
         $subscriber->nodes = $nodes;
diff -dur newsletter-orig/newsletter.install newsletter/newsletter.install
--- newsletter-orig/newsletter.install	2011-11-22 13:22:45.000000000 +0000
+++ newsletter/newsletter.install	2012-02-16 12:16:39.000000000 +0000
@@ -217,6 +217,13 @@
         'not null' => TRUE,
         'default' => 'Manual',
       ),
+      'always_send' => array(
+        'description' => 'Whether or not the newsletter should be sent regardless of new nodes present.',
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+        'default' => 0,
+      ),
        'last_sent' => array(
         'description' => 'Timestamp this list was last sent.',
         'type' => 'int',
@@ -598,3 +605,21 @@
   $list->send_rate = 'Manual';
   $controller->save($list);
 }
+
+
+/**
+ * Add origname field to {file_managed}.
+ */
+function newsletter_update_7101() {
+  // Add always_send field.
+  if (!db_field_exists('newsletter_list', 'always_send')) {
+    db_add_field('newsletter_list', 'always_send', array(
+      'description' => 'Whether or not the newsletter should be sent regardless of new nodes present.',
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ));
+  }
+}
+
diff -dur newsletter-orig/newsletter.module newsletter/newsletter.module
--- newsletter-orig/newsletter.module	2012-02-15 19:39:48.000000000 +0000
+++ newsletter/newsletter.module	2012-02-16 12:31:35.000000000 +0000
@@ -365,7 +365,7 @@
   }
   // Automated Newsletter lists that didn't have remaining for this cron run
   $cron_lists = db_query("SELECT nlid FROM {newsletter_list}
-    WHERE send_again = CURDATE()
+    WHERE send_again <= CURDATE()
     OR send_again IS NULL
     AND (send_rate = 'Daily' OR send_rate = 'Weekly' OR send_rate = 'Monthly')")
     ->fetchAll();
