summaryrefslogtreecommitdiff
path: root/misc
diff options
context:
space:
mode:
Diffstat (limited to 'misc')
-rw-r--r--misc/unix/start.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/misc/unix/start.c b/misc/unix/start.c
index 04371d6e1..0cd81cd87 100644
--- a/misc/unix/start.c
+++ b/misc/unix/start.c
@@ -61,7 +61,7 @@
static int initialized = 0;
-
+static apr_pool_t *global_apr_pool;
apr_status_t apr_initialize(void)
{
@@ -76,6 +76,10 @@ apr_status_t apr_initialize(void)
return APR_SUCCESS;
}
+ if (apr_create_pool(&global_apr_pool, NULL) != APR_SUCCESS) {
+ return APR_ENOPOOL;
+ }
+
#if !defined(BEOS) && !defined(OS2) && !defined(WIN32)
apr_unix_setup_lock();
#elif defined WIN32
@@ -90,7 +94,7 @@ apr_status_t apr_initialize(void)
return APR_EEXIST;
}
#endif
- status = apr_init_alloc();
+ status = apr_init_alloc(global_apr_pool);
return status;
}
@@ -100,7 +104,7 @@ void apr_terminate(void)
if (initialized) {
return;
}
- apr_term_alloc();
+ apr_term_alloc(global_apr_pool);
}
apr_status_t apr_set_abort(int (*apr_abort)(int retcode), apr_pool_t *cont)