summaryrefslogtreecommitdiff
path: root/misc
diff options
context:
space:
mode:
authorstriker <striker@13f79535-47bb-0310-9956-ffa450edef68>2001-12-14 02:16:55 +0000
committerstriker <striker@13f79535-47bb-0310-9956-ffa450edef68>2001-12-14 02:16:55 +0000
commit9473594662157f0d6325327faec0c4d2ce705981 (patch)
treed859fa9ece1136a461508799134df5d3cb21a1ad /misc
parenta23778e2fc9853ab90f5c33b1cb8e751ca238f34 (diff)
downloadlibapr-9473594662157f0d6325327faec0c4d2ce705981.tar.gz
Move us over to the new pools code. The debug code isn't in place yet,
so hold off on APR_POOL_DEBUG for a day. No API changes. Reviewed by: Justin Erenkrantz, Brian Pane git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@62645 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'misc')
-rw-r--r--misc/unix/start.c39
1 files changed, 22 insertions, 17 deletions
diff --git a/misc/unix/start.c b/misc/unix/start.c
index a1c441a86..220a0afd1 100644
--- a/misc/unix/start.c
+++ b/misc/unix/start.c
@@ -64,10 +64,10 @@
static int initialized = 0;
-static apr_pool_t *global_apr_pool;
APR_DECLARE(apr_status_t) apr_initialize(void)
{
+ apr_pool_t *pool;
apr_status_t status;
#if defined WIN32 || defined(NETWARE)
int iVersionRequested;
@@ -82,21 +82,31 @@ APR_DECLARE(apr_status_t) apr_initialize(void)
return APR_SUCCESS;
}
- if (apr_pool_create(&global_apr_pool, NULL) != APR_SUCCESS) {
+#if !defined(BEOS) && !defined(OS2) && !defined(WIN32) && !defined(NETWARE)
+ apr_unix_setup_lock();
+ apr_proc_mutex_unix_setup_lock();
+ apr_unix_setup_time();
+#endif
+
+#if defined(NETWARE)
+ apr_netware_setup_time();
+#endif
+
+ if ((status = apr_pool_initialize()) != APR_SUCCESS)
+ return status;
+
+ if (apr_pool_create(&pool, NULL) != APR_SUCCESS) {
return APR_ENOPOOL;
}
#ifdef WIN32
/* Initialize apr_os_level global */
- if (apr_get_oslevel(global_apr_pool, &osver) != APR_SUCCESS) {
+ if (apr_get_oslevel(pool, &osver) != APR_SUCCESS) {
return APR_EEXIST;
}
#endif
-#if !defined(BEOS) && !defined(OS2) && !defined(WIN32) && !defined(NETWARE)
- apr_unix_setup_lock();
- apr_proc_mutex_unix_setup_lock();
- apr_unix_setup_time();
-#elif defined WIN32 || defined(NETWARE)
+
+#if defined WIN32 || defined(NETWARE)
iVersionRequested = MAKEWORD(WSAHighByte, WSALowByte);
err = WSAStartup((WORD) iVersionRequested, &wsaData);
if (err) {
@@ -108,14 +118,8 @@ APR_DECLARE(apr_status_t) apr_initialize(void)
return APR_EEXIST;
}
#endif
-#if defined(NETWARE)
- apr_netware_setup_time();
-#endif
-
- if ((status = apr_pool_alloc_init(global_apr_pool)) != APR_SUCCESS)
- return status;
-
- apr_signal_init(global_apr_pool);
+
+ apr_signal_init(pool);
return APR_SUCCESS;
}
@@ -126,7 +130,8 @@ APR_DECLARE_NONSTD(void) apr_terminate(void)
if (initialized) {
return;
}
- apr_pool_alloc_term(global_apr_pool);
+ apr_pool_terminate();
+
#if defined(NETWARE)
WSACleanup();
#endif