Before closing process events already present in queue
Project: http://git-wip-us.apache.org/repos/asf/logging-log4cxx/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4cxx/commit/a4869173 Tree: http://git-wip-us.apache.org/repos/asf/logging-log4cxx/tree/a4869173 Diff: http://git-wip-us.apache.org/repos/asf/logging-log4cxx/diff/a4869173 Branch: refs/heads/master Commit: a48691731b7f36f9909df55e7fc8e401554bb049 Parents: 98141e5 Author: Denys Smolianiuk <[email protected]> Authored: Wed Aug 29 16:49:10 2018 +0300 Committer: Denys Smolianiuk <[email protected]> Committed: Wed Aug 29 16:49:10 2018 +0300 ---------------------------------------------------------------------- src/main/cpp/asyncappender_nonblocking.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4cxx/blob/a4869173/src/main/cpp/asyncappender_nonblocking.cpp ---------------------------------------------------------------------- diff --git a/src/main/cpp/asyncappender_nonblocking.cpp b/src/main/cpp/asyncappender_nonblocking.cpp index b6cedfa..25ad7ff 100644 --- a/src/main/cpp/asyncappender_nonblocking.cpp +++ b/src/main/cpp/asyncappender_nonblocking.cpp @@ -340,7 +340,7 @@ AsyncAppender::DiscardSummary::createEvent(::log4cxx::helpers::Pool& p, void* LOG4CXX_THREAD_FUNC AsyncAppender::dispatch(apr_thread_t* /*thread*/, void* data) { AsyncAppender* pThis = (AsyncAppender*) data; try { - while (!pThis->closed) { + while (!pThis->closed || !pThis->buffer.empty()) { pThis->bufferNotEmpty.await();
