diff --git a/includes/node_registration.forms.inc b/includes/node_registration.forms.inc
index ff47aae..648f833 100644
--- a/includes/node_registration.forms.inc
+++ b/includes/node_registration.forms.inc
@@ -700,7 +700,7 @@ function node_registration_form($form, &$form_state, $registration, $user_to_reg
 
   // Field: slots.
   $setting_name = 'max_slots_per_registration_' . $auth_type;
-  $max_slots = min($settings->$setting_name, $capacity - node_registration_event_count($node));
+  $max_slots = min($settings->$setting_name, ($capacity ?: 999) - node_registration_event_count($node));
   $options = range(1, max(1, min(9, $max_slots)));
   $form['slots'] = array(
     '#type' => 'select',
@@ -709,6 +709,7 @@ function node_registration_form($form, &$form_state, $registration, $user_to_reg
     '#options' => array_combine($options, $options),
     '#default_value' => $registration->slots,
     '#access' => 1 < $max_slots,
+    '#real_max_slots' => $max_slots,
   );
 
   // Field fields.
