diff options
-rw-r--r-- | src/libfast/fast_dispatcher.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/libfast/fast_dispatcher.c b/src/libfast/fast_dispatcher.c index e0c57b47d..4daf91905 100644 --- a/src/libfast/fast_dispatcher.c +++ b/src/libfast/fast_dispatcher.c @@ -152,6 +152,10 @@ static fast_session_t* load_session(private_fast_dispatcher_t *this) context = this->context_constructor(this->param); } session = fast_session_create(context); + if (!session) + { + return NULL; + } enumerator = this->controllers->create_enumerator(this->controllers); while (enumerator->enumerate(enumerator, ¢ry)) @@ -306,7 +310,7 @@ static void dispatch(private_fast_dispatcher_t *this) if (request == NULL) { - continue; + break; } now = time_monotonic(NULL); sid = request->get_cookie(request, "SID"); |