diff options
author | Nikias Bassen | 2019-11-07 02:59:05 +0100 |
---|---|---|
committer | Nikias Bassen | 2019-11-07 02:59:05 +0100 |
commit | 4d4586903b4cbab8b307a406e894e34b4b19a723 (patch) | |
tree | 8fe811f8c1c00dc1215011728c96bdb98a8874b9 | |
parent | b7c802f1b7cdf8a271b148d4375c4309aefc5e0d (diff) | |
download | libplist-4d4586903b4cbab8b307a406e894e34b4b19a723.tar.gz libplist-4d4586903b4cbab8b307a406e894e34b4b19a723.tar.bz2 |
Add plist_to_bin_free() and plist_to_xml_free() functions that free memory allocated by plist_to_bin()/plist_to_xml()
-rw-r--r-- | include/plist/plist.h | 14 | ||||
-rw-r--r-- | src/bplist.c | 5 | ||||
-rw-r--r-- | src/xplist.c | 5 |
3 files changed, 24 insertions, 0 deletions
diff --git a/include/plist/plist.h b/include/plist/plist.h index 7a41fb4..824ba43 100644 --- a/include/plist/plist.h +++ b/include/plist/plist.h @@ -620,6 +620,13 @@ extern "C" void plist_to_xml(plist_t plist, char **plist_xml, uint32_t * length); /** + * Frees the memory allocated by plist_to_xml(). + * + * @param plist_xml The buffer allocated by plist_to_xml(). + */ + void plist_to_xml_free(char *plist_xml); + + /** * Export the #plist_t structure to binary format. * * @param plist the root node to export @@ -630,6 +637,13 @@ extern "C" void plist_to_bin(plist_t plist, char **plist_bin, uint32_t * length); /** + * Frees the memory allocated by plist_to_bin(). + * + * @param plist_bin The buffer allocated by plist_to_bin(). + */ + void plist_to_bin_free(char *plist_bin); + + /** * Import the #plist_t structure from XML format. * * @param plist_xml a pointer to the xml buffer. diff --git a/src/bplist.c b/src/bplist.c index e0e7622..f0b8f0e 100644 --- a/src/bplist.c +++ b/src/bplist.c @@ -1379,3 +1379,8 @@ PLIST_API void plist_to_bin(plist_t plist, char **plist_bin, uint32_t * length) bplist_buff->data = NULL; // make sure we don't free the output buffer byte_array_free(bplist_buff); } + +PLIST_API void plist_to_bin_free(char *plist_bin) +{ + free(plist_bin); +} diff --git a/src/xplist.c b/src/xplist.c index 0cf4663..fa6bb6d 100644 --- a/src/xplist.c +++ b/src/xplist.c @@ -531,6 +531,11 @@ PLIST_API void plist_to_xml(plist_t plist, char **plist_xml, uint32_t * length) str_buf_free(outbuf); } +PLIST_API void plist_to_xml_free(char *plist_xml) +{ + free(plist_xml); +} + struct _parse_ctx { const char *pos; const char *end; |