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 sim
+if (prev == cmp) {
+ *mem = with;
}
-return *(void **)mem;
+CHECK(apr_thread_mutex_unlock(lock));
#else
prev = *(void **)mem;
if (prev == cmp) {
*mem = with;
}
-return prev;
#endif /* APR_HAS_THREADS */
+return prev;
}
#endif /*!defined(apr_atomic_c
k));
prev = *mem;
if (prev == cmp) {
*mem = with;
}
CHECK(apr_thread_mutex_unlock(lock));
#else
prev = *mem;
if (prev == cmp) {
*mem = with;
}
#endif /* APR_HAS_THREADS */
return prev;
}
--
Philip Martin
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
to find it because there are only 15 slots and all but one should
be zero, e.g.
(gdb) p bdb_cache[0].array[1]
$9 = (apr_hash_entry_t *) 0x0
(gdb) p bdb_cache[0].array[3]
$10 = (apr_hash_entry_t *) 0x8072d30
--
Philip Martin
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
ng without optimisation on ia64?
--
Philip Martin
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
5 matches
Mail list logo