On Mon, Feb 6, 2012 at 6:54 PM, Bojan Smojver <bojan@rexursive.com> wrote:
On Mon, 2012-02-06 at 18:47 -0500, Ronen Mizrahi wrote:
> For the time being we resolved it by adding an if not NULL statement
> before invoking the cleanup function however I am not sure that a NULL
> cleanup function is allowed or by itself represents some kind of an
> issue.

Have you tried setting you cleanup function to apr_pool_cleanup_null()?



I am afraid I do not understand how this is relevant.

The pool cleanup functions in the parent process are registered correctly and work fine even when releasing the global pool (which happens when the process terminates).

Only in the child process we run into this issue and we cannot change the registrations of cleanup functions in the child process since the crash occurs somewhere between the invocation of fork() and the invocation of exec().