On 9/24/06, Philip Martin <[EMAIL PROTECTED]> wrote:
Philip Martin <[EMAIL PROTECTED]> writes:
> Port some of the atomic code from 1.2.x to 0.9.x, in particular make
> mutex operations that fail cause an abort and make the generic C
> implementation of apr_atomic_cas work on 64 bit platforms.
A less radical change to the code is simply to truncate the 64 bit
values and rely on the application not to need those bits. This
should be enough to fix Subversion which only uses small +ve integers.
* atomic/unix/apr_atomic.c (apr_atomic_cas): Truncate 64 bit argument
values.
I committed this version of the change in r449724, since it's
certainly an improvement over what was there before, and smaller
changes for the 0.9.x branch seem more desireable. I don't actually
have a 64 bit platform to test on, so if someone who does can confirm
that it helps that would be great, but it sure looks like it should
correct the problem, and if I turn off the linux-specific atomics
implementation here it seems to work fine, so it's certainly not a
step backwards.
-garrett
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]