Yann, can you have a look if this fix of mine does do the right thing? For me, 
mod_md works better when it does not use destroyed pools. 🤪

If this is ok, we might want to backport this really fast.

/Stefan


diff --git a/modules/core/mod_watchdog.c b/modules/core/mod_watchdog.c
index d833939cb0..551f0156f7 100644
--- a/modules/core/mod_watchdog.c
+++ b/modules/core/mod_watchdog.c
@@ -175,6 +175,7 @@ static void* APR_THREAD_FUNC wd_worker(apr_thread_t 
*thread, void *data)
                 wl = wl->next;
             }
             apr_pool_destroy(ctx);
+            ctx = NULL;
         }
         else {
             ap_run_watchdog_init(wd_server_conf->s, w->name, w->pool);
@@ -235,8 +236,10 @@ static void* APR_THREAD_FUNC wd_worker(apr_thread_t 
*thread, void *data)
                 ap_run_watchdog_step(wd_server_conf->s, w->name, ctx);
             }
         }
-        if (ctx)
+        if (ctx) {
             apr_pool_destroy(ctx);
+            ctx = NULL;
+        }
         if (!w->is_running) {
             break;
         }

Reply via email to