diff options
| author | Tyge Løvset <[email protected]> | 2020-03-04 07:15:14 +0100 |
|---|---|---|
| committer | GitHub <[email protected]> | 2020-03-04 07:15:14 +0100 |
| commit | 89bb51a98b2cf5c454e27f8f6dc905a73aae8b42 (patch) | |
| tree | bb6343179be4b466e8f9bda2a3e9ff7457e6d1f7 /cvector.h | |
| parent | 8bf27012efb6fffed9bbc478f0c2b39ca04891cc (diff) | |
| download | STC-modified-89bb51a98b2cf5c454e27f8f6dc905a73aae8b42.tar.gz STC-modified-89bb51a98b2cf5c454e27f8f6dc905a73aae8b42.zip | |
More small fixes.
Diffstat (limited to 'cvector.h')
| -rw-r--r-- | cvector.h | 10 |
1 files changed, 5 insertions, 5 deletions
@@ -37,7 +37,8 @@ static inline cvector_size_t _cvector_safe_capacity(const void* data) { #define declare_CVector_2(tag, T) declare_CVector_3(tag, T, cdef_destroy)
#define declare_CVector_STR(tag) declare_CVector_3(tag, CString, cstring_destroy)
-#define declare_CVector_3(tag, T, valueDestr) \
+
+#define declare_CVector_3(tag, T, valueDestroy) \
typedef T cvector_##tag##_value_t; \
typedef struct CVector(tag) { \
T* data; \
@@ -58,7 +59,7 @@ static inline void cvector_##tag##_swap(CVector(tag)* v1, CVector(tag)* v2) { \ static inline void cvector_##tag##_destroy(CVector(tag)* self) { \
T* p = self->data; \
cvector_size_t i = 0, n = cvector_size(*self); \
- for (; i < n; ++p, ++i) valueDestr(p); \
+ for (; i < n; ++p, ++i) valueDestroy(p); \
free(_cvector_alloced(self->data)); \
} \
\
@@ -111,10 +112,9 @@ static inline T cvector_##tag##_back(CVector(tag) cv) { \ } \
\
\
-static inline T cvector_##tag##_pop(CVector(tag)* self) { \
- T value = cvector_##tag##_back(*self); \
+static inline void cvector_##tag##_pop(CVector(tag)* self) { \
+ valueDestroy(&self->data[_cvector_size(*self) - 1]); \
--_cvector_size(*self); \
- return value; \
} \
\
\
|
