>wrowe 02/05/18 10:22:24 > > Modified: server core.c > Log: > Resolve the EXEC_ON_READ bit for ServerRoot and other modules that test > the directive context. Should eliminate the segfault.
Ok, segfault is gone. So is some validation that ServerRoot occured in a global context. Actually, that means that LoadModule and others are not tested to be in the global context either. We don't set up the vhost server till afterwards. Try setting ServerRoot within a vhost and it can't pick that up, can't warn us of a bad config. I'm just getting my head wrapped around cfg parsing, so anyone with a whole lot more background here might be able to provide pointers. Notice that we can't defer ServerRoot processing unless we defer LoadModule processing. If we REALLY get a better handle on this, I see no reason to maintain the test-load then re-load configuration logic. If we can pre-process what we must with EXEC_ON_READ, then open logs and the like, we should be able to directly proceed to run_mpm, without dumping it all and reloading. On Win32, we load-unload-reload the parent, then load-unload-reload the child config. Losing both redundant unload-load sequences will be a huge win at startup. [Caviat; we will always have unload-load server restart sequences for the parent process. But never, on win32 in the child process, a restart churns up a whole new child process, so the child will really win.] Bill