summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRadoslaw Jablonski <radoslawjablonski@gmail.com>2011-10-10 09:22:39 +0200
committerJohan Hedberg <johan.hedberg@intel.com>2011-10-11 16:28:38 +0300
commitae23252d8b5794402a3a345d1624b6bbca277397 (patch)
treef3b5189b33c4898821892c5c409361aa483720ed
parente71edda664ae02afb5f18461cb426ebde4c8c1cc (diff)
downloadobexd-ae23252d8b5794402a3a345d1624b6bbca277397.tar.gz
Add NULL-field checking in vcard_printf_address
Without that checking strlen(..) could be called with NULL as param and this will result crash (in some scenarios 'field' may be NULL)
-rw-r--r--plugins/vcard.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/plugins/vcard.c b/plugins/vcard.c
index c0a33cb..dc20a77 100644
--- a/plugins/vcard.c
+++ b/plugins/vcard.c
@@ -680,8 +680,11 @@ static void vcard_printf_address(GString *vcards, uint8_t format,
for (l = address->fields; l; l = l->next) {
char *field = l->data;
- set_escape(format, field_esc, field, LEN_MAX, strlen(field));
- g_strlcat(fields, field_esc, len);
+ if (field) {
+ set_escape(format, field_esc, field, LEN_MAX,
+ strlen(field));
+ g_strlcat(fields, field_esc, len);
+ }
if (l->next)
/* not adding ';' after last addr field */