diff --git a/app/controllers/course/timesrooms.php b/app/controllers/course/timesrooms.php
index 151978cc22be543827f70a592c32598dd51b6477..8a66df0b5dedb11f2a74929534321438ed034c7a 100644
--- a/app/controllers/course/timesrooms.php
+++ b/app/controllers/course/timesrooms.php
@@ -671,13 +671,24 @@ class Course_TimesroomsController extends AuthenticatedController
 
 
     /**
-     *
+     * Creates a new room request for the selected dates.
      */
     protected function requestStack($cycle_id)
     {
-        $this->cycle_id = $cycle_id;
+        $appointment_ids = [];
+
+        foreach ($_SESSION['_checked_dates'] as $appointment_id) {
+            if (CourseDate::exists($appointment_id)) {
+                $appointment_ids[] = $appointment_id;
+            }
+        }
+
+        if (!$appointment_ids) {
+            PageLayout::postError(_('Es wurden keine gültigen Termin-IDs übergeben!'));
+            $this->relocate('course/timesrooms/index', ['contentbox_open' => $cycle_id]);
+            return;
+        }
 
-        $appointment_ids = $_SESSION['_checked_dates'];
         $this->redirect(
             'course/room_requests/request_start',
             [
diff --git a/lib/models/resources/ResourceRequest.class.php b/lib/models/resources/ResourceRequest.class.php
index 8b82e49919cc11afafc58eb3aba259d761962571..571381cceb80c58578da3837b9c69cfd1869fa2e 100644
--- a/lib/models/resources/ResourceRequest.class.php
+++ b/lib/models/resources/ResourceRequest.class.php
@@ -1428,11 +1428,11 @@ class ResourceRequest extends SimpleORMap implements PrivacyObject, Studip\Calen
                 return sprintf(_('Einzeltermine (%sx)'), count($this->appointments));
             }
         } elseif (count($this->appointments) == 1) {
-            if ($short) {
+            $date = $this->appointments[0]->appointment;
+            if ($short || !$date) {
                 return _('Einzeltermin');
             } else {
-                return sprintf(_('Einzeltermin (%s)'), 
-                    $this->appointments[0]->appointment->getFullname());
+                return sprintf(_('Einzeltermin (%s)'), $date->getFullname());
             }
         } elseif ($this->date) {
             if ($short) {