[
https://issues.apache.org/jira/browse/LOGCXX-394?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13902862#comment-13902862
]
Rhys Ulerich commented on LOGCXX-394:
-------------------------------------
Is there some way to fix the original singleton implementation (which sounded
like the intent of the function-scoped statics) that won't require redefining
equality tests on Level smart pointers? The fix described thus far sounds like
it requires changing a variety of seemingly unrelated code.
> Levels are not thread safe
> --------------------------
>
> Key: LOGCXX-394
> URL: https://issues.apache.org/jira/browse/LOGCXX-394
> Project: Log4cxx
> Issue Type: Bug
> Components: Appender
> Environment: Windows 7, Visual Studio 2010 SP1
> Reporter: Petro Protsyk
> Assignee: Thorsten Schöning
> Priority: Minor
> Labels: thread-safety
>
> Level.cpp. All default level variables are function static. This is not
> thread safe, especially in Visual C++ compiler.
> Here is code to reproduce the issue in VC++ 2010:
> Concurrency::parallel_for (int(0), int(10), [&](int i)
> {
> if (::log4cxx::Level::getWarn() == NULL)
> {
> throw std::exception();
> }
> });
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)