diff --git a/mongoose.c b/mongoose.c
index 6d8e63198f682d1e8d5e8b96bda6df7772b9ab10..eef5176640c1837ab5a428603b99351af236f8b1 100644
--- a/mongoose.c
+++ b/mongoose.c
@@ -4533,8 +4533,10 @@ static void mg_ev_handler(struct ns_connection *nc, enum ns_event ev, void *p) {
     case NS_RECV:
       if (nc->flags & NSF_ACCEPTED) {
         process_request(conn);
+#ifndef MONGOOSE_NO_CGI
       } else if (nc->flags & MG_CGI_CONN) {
         on_cgi_data(nc);
+#endif
       } else {
         process_response(conn);
       }