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) static inline void decl_count(void* buffer)
{ {
// atomic if(--*(_msgpack_atomic_counter_t*)buffer == 0) { free(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); free(buffer);
} }
} }