2.0 builds, but dumps core on FreeBSD 3.3 (ap_lock).

Basically, ap_initialize() needs to get called before create_process(),
since create_process() passes op_on structure to semop() to get a lock, but
op_on isn't initialized until ap_initialize() calls setup_lock().  Here is
a slight rearrangement to main() which calls ap_initialize() earlier...

Submitted by:	Jeff Trawick <trawick@us.ibm.com>
Reviewed by:	Bill Stoddard <stoddard@us.ibm.com>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84661 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Bill Stoddard
2000-02-23 15:37:37 +00:00
parent e3b52cc47f
commit 151d004b7d

View File

@ -290,14 +290,18 @@ API_EXPORT_NONSTD(int) main(int argc, char *argv[])
int configtestonly = 0;
const char *confname = SERVER_CONFIG_FILE;
const char *def_server_root = HTTPD_ROOT;
process_rec *process = create_process(argc, (const char **)argv);
process_rec *process;
server_rec *server_conf;
ap_context_t *pglobal = process->pool;
ap_context_t *pconf = process->pconf;
ap_context_t *pglobal;
ap_context_t *pconf;
ap_context_t *plog; /* Pool of log streams, reset _after_ each read of conf */
ap_context_t *ptemp; /* Pool for temporary config stuff, reset often */
ap_context_t *pcommands; /* Pool for -C and -c switches */
ap_initialize();
process = create_process(argc, (const char **)argv);
pglobal = process->pool;
pconf = process->pconf;
ap_server_argv0 = process->short_name;
ap_util_uri_init();