summaryrefslogtreecommitdiffstats
path: root/src/bplist.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/bplist.c')
-rw-r--r--src/bplist.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/bplist.c b/src/bplist.c
index a41ce1a..a6e6ded 100644
--- a/src/bplist.c
+++ b/src/bplist.c
@@ -630,6 +630,13 @@ static plist_t parse_bin_node(struct bplist_data *bplist, const char** object)
630 } 630 }
631 631
632 case BPLIST_NULL: 632 case BPLIST_NULL:
633 {
634 plist_data_t data = plist_new_plist_data();
635 data->type = PLIST_NULL;
636 data->length = 0;
637 return node_create(NULL, data);
638 }
639
633 default: 640 default:
634 return NULL; 641 return NULL;
635 } 642 }
@@ -1295,6 +1302,11 @@ PLIST_API void plist_to_bin(plist_t plist, char **plist_bin, uint32_t * length)
1295 1302
1296 switch (data->type) 1303 switch (data->type)
1297 { 1304 {
1305 case PLIST_NULL: {
1306 uint8_t b = 0;
1307 byte_array_append(bplist_buff, &b, 1);
1308 break;
1309 }
1298 case PLIST_BOOLEAN: { 1310 case PLIST_BOOLEAN: {
1299 uint8_t b = data->boolval ? BPLIST_TRUE : BPLIST_FALSE; 1311 uint8_t b = data->boolval ? BPLIST_TRUE : BPLIST_FALSE;
1300 byte_array_append(bplist_buff, &b, 1); 1312 byte_array_append(bplist_buff, &b, 1);