summaryrefslogtreecommitdiffstats
path: root/src/plist.c
diff options
context:
space:
mode:
authorGravatar Xiao Deng2020-05-25 01:53:46 +0200
committerGravatar Nikias Bassen2020-05-25 01:53:46 +0200
commitea5b54b47acec3bebd3e8ae3fccd66a60ec9ff89 (patch)
treef0bccad870590cf479c98593a9d62eccf88c3f17 /src/plist.c
parent517a4f93b7032b06ff69488a70dbcb9ad8f02c6f (diff)
downloadlibplist-ea5b54b47acec3bebd3e8ae3fccd66a60ec9ff89.tar.gz
libplist-ea5b54b47acec3bebd3e8ae3fccd66a60ec9ff89.tar.bz2
Return NULL from plist_copy() if passed a NULL pointer
This will prevent an assert if a NULL pointer is passed, and can make writing some code easier and cleaner without the need for a NULL check. For example, plist_copy(plist_dict_get_item(dict, "abc")) would give us a copy of the dict's node if the dict has a value for the given key, or NULL without any further checks.
Diffstat (limited to 'src/plist.c')
-rw-r--r--src/plist.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/plist.c b/src/plist.c
index 0fb1017..38212d8 100644
--- a/src/plist.c
+++ b/src/plist.c
@@ -445,7 +445,7 @@ static plist_t plist_copy_node(node_t *node)
PLIST_API plist_t plist_copy(plist_t node)
{
- return plist_copy_node(node);
+ return node ? plist_copy_node(node) : NULL;
}
PLIST_API uint32_t plist_array_get_size(plist_t node)