Hello,
I get an infinite loop in apr_pool_cleanup_kill when it is called by two
threads simultaneously via apr_thread_mutex_destroy, i.e. with call chain:
apr_thread_mutex_destroy
apr_pool_cleanup_run
apr_pool_cleanup_kill
Each thread calls apr_thread_mutex_destroy on a different mutex, but in
the same pool.
Looking naively at apr_pool_cleanup_kill it would appear to be modifying
pool state variables without any sort of concurrency protection which
could explain the problem.
Am I missing something obvious?
Platform is linux (opensuse) / amd64.
Regards,
Ian Gardner