aboutsummaryrefslogtreecommitdiff
path: root/src/util/bits.c
diff options
context:
space:
mode:
authorJ08nY2017-09-17 17:23:48 +0200
committerJ08nY2017-09-17 17:26:41 +0200
commit2074700ba7a29e197bb7f1233cc0903131a93cf4 (patch)
treec00fce0f56ad285fff789bb651b3d847c0b914c0 /src/util/bits.c
parent2a89595384a9fb196a6db3de3915054f06d15cf9 (diff)
downloadecgen-2074700ba7a29e197bb7f1233cc0903131a93cf4.tar.gz
ecgen-2074700ba7a29e197bb7f1233cc0903131a93cf4.tar.zst
ecgen-2074700ba7a29e197bb7f1233cc0903131a93cf4.zip
Diffstat (limited to 'src/util/bits.c')
-rw-r--r--src/util/bits.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/util/bits.c b/src/util/bits.c
index 05b71aa..6adae05 100644
--- a/src/util/bits.c
+++ b/src/util/bits.c
@@ -10,7 +10,8 @@
bits_t *bits_new(size_t bit_len) {
bits_t *result = try_calloc(sizeof(bits_t));
size_t byte_len = BYTE_LEN(bit_len);
- result->bits = try_calloc(byte_len);
+ if (byte_len > 0)
+ result->bits = try_calloc(byte_len);
result->allocated = byte_len;
result->bitlen = bit_len;
return result;
@@ -82,7 +83,8 @@ bits_t *bits_from_raw(const unsigned char *bits, size_t bit_len) {
bits_t *result = try_calloc(sizeof(bits_t));
result->bitlen = bit_len;
result->allocated = BYTE_LEN(bit_len);
- result->bits = try_memdup(bits, result->allocated);
+ if (bit_len > 0)
+ result->bits = try_memdup(bits, result->allocated);
return result;
}