logging-log4cxx-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Curt Arnold <carn...@apache.org>
Subject Re: Access violation when compiled with msvc 6.0
Date Wed, 05 Jan 2005 06:18:53 GMT

On Jan 4, 2005, at 6:29 PM, Justin Chen wrote:

> Hello,
> I got a similar problem as the one from Bob Young. The difference is 
> that when I use logging in a standalone EXE, it works just fine; the 
> problem occurs when I use it in a DLL called by an EXE. When the EXE 
> terminates, an error message appears stating that certain memory could 
> not be "read". Surprisingly all log entries have been written 
> succesfully despite of the error.
> When I compile it with vc7.0, everything is working ok.
> Any ideas? Thanks!
> -Justin

The current CVS is significantly different than 0.9.7 and there is a 
decent chance that whatever was causing this error has at least moved.  
0.9.7 had significant number of non-local static variables that caused 
problems on startup in DLL's (see 
http://issues.apache.org/jira/browse/LOGCXX-4) since their construction 
order was unspecified.  The use of non-local statics could also cause 
problems on shutdown when the destructors are called in a unspecified 
order.  All non-local statics (with the exception of Level::DEBUG, etc 
which remain for backward compatibility and should be safe since they 
aren't used within log4cxx) should have been eliminated from the CVS.

I know that there is at least a problem with NDC::pop in the current 
CVS and I'll try to analyze it in fairly short order.  If anyone wants 
to see if the same problem occurs in the CVS version, I would 
appreciate reports.  However, I won't spend any time on it if it only 
occurs in 0.9.7.

View raw message