aboutsummaryrefslogtreecommitdiffstats
path: root/src/zsave.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/zsave.c')
-rw-r--r--src/zsave.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/zsave.c b/src/zsave.c
index 6f68387..6aa50b5 100644
--- a/src/zsave.c
+++ b/src/zsave.c
@@ -12,9 +12,9 @@ zsave(z_t a, void *buffer)
*((int *)buf) = a->sign, buf += sizeof(int);
*((size_t *)buf) = a->used, buf += sizeof(size_t);
*((size_t *)buf) = a->alloced, buf += sizeof(size_t);
- if (a->sign) {
+ if (!zzero(a)) {
memcpy(buf, a->chars, a->used * sizeof(*(a->chars)));
}
}
- return sizeof(z_t) - sizeof(a->chars) + (a->sign ? a->used * sizeof(*(a->chars)) : 0);
+ return sizeof(z_t) - sizeof(a->chars) + (zzero(a) ? 0 : a->used * sizeof(*(a->chars)));
}