c,cpp: fix unpacker

This commit is contained in:
frsyuki 2009-12-16 04:08:36 +09:00
parent 5aa47d6677
commit 686e8ca0f0

View File

@ -152,7 +152,7 @@ static inline void init_count(void* buffer)
static inline void decl_count(void* buffer)
{
// atomic if(--*(_msgpack_atomic_counter_t*)buffer == 0) { free(buffer); }
if(_msgpack_sync_decr_and_fetch((volatile _msgpack_atomic_counter_t*)buffer)) {
if(_msgpack_sync_decr_and_fetch((volatile _msgpack_atomic_counter_t*)buffer) == 0) {
free(buffer);
}
}