diff options
| -rw-r--r-- | include/stc/carc.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/stc/carc.h b/include/stc/carc.h index 031c4f56..245ba708 100644 --- a/include/stc/carc.h +++ b/include/stc/carc.h @@ -130,7 +130,7 @@ STC_INLINE void _cx_memb(_drop)(_cx_self* self) {
if (self->use_count && _i_atomic_dec_and_test(self->use_count)) {
i_keydrop(self->get);
- if (self->get != &((_cx_carc_rep *)self->use_count)->value)
+ if ((char *)self->get != (char *)self->use_count + offsetof(_cx_carc_rep, value))
c_free(self->get);
c_free(self->use_count);
}
|
