diff --git a/src/hb-atomic-private.hh b/src/hb-atomic-private.hh index a348f956e..03d7df117 100644 --- a/src/hb-atomic-private.hh +++ b/src/hb-atomic-private.hh @@ -56,6 +56,8 @@ typedef long hb_atomic_int_t; #include typedef int32_t hb_atomic_int_t; #define hb_atomic_int_add(AI, V) (OSAtomicAdd32Barrier((V), &(AI)), (AI) - (V)) +#define hb_atomic_int_set(AI, V) \ + do {} while (!OSAtomicCompareAndSwap32 (hb_atomic_int_get (AI), (V), (&(AI)))) #define hb_atomic_int_get(AI) OSAtomicAdd32Barrier(0, &(AI))