Blame SOURCES/modperl-2.0.8-no-event-mpm.patch

8df580
diff --git a/src/modules/perl/mod_perl.c b/src/modules/perl/mod_perl.c
8df580
index 6dd9027..dd1f52a 100644
8df580
--- a/src/modules/perl/mod_perl.c
8df580
+++ b/src/modules/perl/mod_perl.c
8df580
@@ -653,6 +653,8 @@ int modperl_is_running(void)
8df580
 int modperl_hook_pre_config(apr_pool_t *p, apr_pool_t *plog,
8df580
                             apr_pool_t *ptemp)
8df580
 {
8df580
+    int threaded = 0;
8df580
+    int async = 0;
8df580
 #if AP_MODULE_MAGIC_AT_LEAST(20110329,0)
8df580
     ap_reserve_module_slots_directive("PerlLoadModule");
8df580
 #endif
8df580
@@ -662,6 +664,15 @@ int modperl_hook_pre_config(apr_pool_t *p, apr_pool_t *plog,
8df580
     /* perl 5.8.1+ */
8df580
     modperl_hash_seed_init(p);
8df580
 
8df580
+    ap_mpm_query(AP_MPMQ_IS_THREADED, &threaded);
8df580
+    ap_mpm_query(AP_MPMQ_IS_ASYNC, &async);
8df580
+
8df580
+    if (async && threaded) {
8df580
+        ap_log_perror(APLOG_MARK, APLOG_CRIT, 0, ptemp, APLOGNO(00001)
8df580
+                      "mod_perl is not compatible with a threaded and async MPM.");
8df580
+        return !OK;
8df580
+    }
8df580
+
8df580
     return OK;
8df580
 }
8df580