diff --git a/Source/Scheduling/Scheduler.cs b/Source/Scheduling/Scheduler.cs
index 781c8e3..f0a5f26 100644
--- a/Source/Scheduling/Scheduler.cs
+++ b/Source/Scheduling/Scheduler.cs
@@ -465,17 +465,16 @@ namespace Nuclex.Support.Scheduling {
/// Retrieves the notification that is due next
/// The notification that is due next
private Notification getNextDueNotification() {
- if(this.notifications.Count == 0) {
- return null;
- } else {
+ while(this.notifications.Count > 0) {
Notification nextDueNotification = this.notifications.Peek();
- while(nextDueNotification.Cancelled) {
+ if(nextDueNotification.Cancelled) {
this.notifications.Dequeue();
- nextDueNotification = this.notifications.Peek();
+ } else {
+ return nextDueNotification;
}
-
- return nextDueNotification;
}
+
+ return null;
}
/// Time source used by the scheduler