From df164551ca5356096127847718e18eaa846847af Mon Sep 17 00:00:00 2001 From: metsw24-max Date: Thu, 19 Mar 2026 20:52:25 +0530 Subject: [PATCH] Replace manual string truncation with apr_pstrndup to fix memory leak and improve safety --- server/config.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/server/config.c b/server/config.c index 712bcab3db7..df76f5e954b 100644 --- a/server/config.c +++ b/server/config.c @@ -634,11 +634,11 @@ AP_DECLARE(const char *) ap_add_module(module *m, apr_pool_t *p, */ /* We cannot fix the string in-place, because it's const */ - if (m->name[strlen(m->name)-1] == ')') { - char *tmp = ap_malloc(strlen(m->name)); /* FIXME: memory leak, albeit a small one */ - memcpy(tmp, m->name, strlen(m->name)-1); - tmp[strlen(m->name)-1] = '\0'; - m->name = tmp; + { + apr_size_t name_len = strlen(m->name); + if (name_len > 0 && m->name[name_len - 1] == ')') { + m->name = apr_pstrndup(p, m->name, name_len - 1); + } } #endif /*_OSD_POSIX*/