From bc09a3419e12d069a62c020027c7f1f598eb0c30 Mon Sep 17 00:00:00 2001 From: Tyge Løvset Date: Wed, 22 Sep 2021 08:31:54 +0200 Subject: Fixed bug in csptr_copy on self assign. --- include/stc/csptr.h | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/include/stc/csptr.h b/include/stc/csptr.h index 11dfaa5a..b0857a25 100644 --- a/include/stc/csptr.h +++ b/include/stc/csptr.h @@ -157,12 +157,11 @@ cx_memb(_reset_make)(Self* self, cx_value_t val) { return self->get; } -STC_INLINE cx_value_t* +STC_INLINE void cx_memb(_copy)(Self* self, Self ptr) { + if (ptr.use_count) cx_increment(ptr.use_count); cx_memb(_del)(self); *self = ptr; - if (self->use_count) cx_increment(self->use_count); - return self->get; } STC_INLINE int -- cgit v1.2.3