summaryrefslogtreecommitdiff
path: root/src/sds.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/sds.c')
-rw-r--r--src/sds.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/sds.c b/src/sds.c
index 82d12e232..bc6aa6b2f 100644
--- a/src/sds.c
+++ b/src/sds.c
@@ -123,6 +123,12 @@ sds sdsRemoveFreeSpace(sds s) {
return sh->buf;
}
+size_t sdsAllocSize(sds s) {
+ struct sdshdr *sh = (void*) (s-(sizeof(struct sdshdr)));
+
+ return sizeof(*sh)+sh->len+sh->free+1;
+}
+
/* Increment the sds length and decrements the left free space at the
* end of the string accordingly to 'incr'. Also set the null term
* in the new end of the string.