summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/stkutil.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/stkutil.c b/src/stkutil.c
index 01a00212..63da0415 100644
--- a/src/stkutil.c
+++ b/src/stkutil.c
@@ -562,7 +562,7 @@ static gboolean parse_dataobj_text(struct comprehension_tlv_iter *iter,
{
char **text = user;
unsigned int len = comprehension_tlv_iter_get_length(iter);
- const unsigned char *data = comprehension_tlv_iter_get_data(iter);
+ const unsigned char *data;
char *utf8;
/* DCS followed by some text, cannot be 1 */
@@ -570,10 +570,12 @@ static gboolean parse_dataobj_text(struct comprehension_tlv_iter *iter,
return FALSE;
if (len == 0) {
- *text = NULL;
+ *text = g_try_malloc0(1);
return TRUE;
}
+ data = comprehension_tlv_iter_get_data(iter);
+
utf8 = decode_text(data[0], len - 1, data + 1);
if (utf8 == NULL)