On May 19, 2006, at 9:50 AM, Rainer Schuetze wrote:

Hi,

I've downloaded the newest Version from

http://svn.apache.org/repos/asf/logging/log4cxx/trunk
Revision 407808.

But got the problem to get the think compiled.
The class InterlockedExchangePointer couldn't be found. Looking on the web, the new Code was added on May 13. (http://svn.apache.org/ viewvc/logging/log4cxx/trunk/src/objectptr.cpp? view=diff&r1=406130&r2=406131&pathrev=406131)
, but where is the mysterious class InterlockedExchangePointer?

regards

Rainer


InterlockedExchangePointer is not a class, but a Windows API method (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ dllproc/base/interlockedexchangepointer.asp). It is available for all versions of Windows since WIndows 95 according to the API documentation, but it was not included in the Platform SDK provided with Visual Studio 6.

In all other places, I had used the Apache Portable Runtime atomics, however for some reason they do not have just an exchange pointer method, but only a compare and exchange pointer method. Thought I would "improve" the Windows build and go directly to the Windows API that I needed instead of kludging apr_atomic_casptr() to do what I needed to do.

I've backed out that change in rev 407850.

Reply via email to