diff --git a/subscriptions.admin.inc b/subscriptions.admin.inc
index 71cb514..079ed47 100644
--- a/subscriptions.admin.inc
+++ b/subscriptions.admin.inc
@@ -207,10 +207,15 @@ function subscriptions_page_form_submit(array $form, array &$form_state) {
               // which means we can't know whether something has changed.
               $send_updates = (empty($element_values['send_updates'][$value][$author_uid]) ? 0 : 1);
               $send_comments = (empty($element_values['send_comments'][$value][$author_uid]) ? 0 : 1);
-              foreach ($rids as $rid) {
-                subscriptions_write($access_key, $module, $field, $value, $author_uid, -$rid, $element_values['send_interval'][$value][$author_uid], $send_updates, $send_comments);
+              if ($element_values['send_interval'][$value][$author_uid] == -1) {
+                  form_set_error('', t('You must set an interval.  Please check your send interval settings in your subscriptions preferences.'));
+                }
+                else {
+                foreach ($rids as $rid) {
+                  subscriptions_write($access_key, $module, $field, $value, $author_uid, -$rid, $element_values['send_interval'][$value][$author_uid], $send_updates, $send_comments);
+                }
+                $changed = TRUE;
               }
-              $changed = TRUE;
             }
             elseif ($bulk_op == 'unsub' && $set_to_enabled ||
                     empty($bulk_op) && !$set_to_enabled && (
@@ -1144,4 +1149,3 @@ function subscriptions_form_column_filter(array &$form_table, $uid) {
     }
   }
 }
-
