From 6b9ab336fe3408a4f073a487f5265a1a2ed101f7 Mon Sep 17 00:00:00 2001
From: Filippo Bigarella <filippobigarella@gmail.com>
Date: Mon, 31 Oct 2016 02:44:02 +0100
Subject: [PATCH] xplist: Prevent NULL pointer dereference when parsing <real>
 nodes

---
 src/xplist.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/src/xplist.c b/src/xplist.c
index 87b21bb..36db07d 100644
--- a/src/xplist.c
+++ b/src/xplist.c
@@ -728,6 +728,14 @@ static void node_from_xml(parse_ctx ctx, plist_t *plist)
             } else if (!strcmp(tag, XPLIST_REAL)) {
                 if (!is_empty) {
                     char *strval = get_text_content(ctx, tag, 1, 0);
+                    if (!strval) {
+                        PLIST_XML_ERR("Couldn't get text content for '%s' node\n", tag);
+                        ctx->pos = ctx->end;
+                        ctx->err++;
+                        free(tag);
+                        free(keyname);
+                        return;
+                    }
                     data->realval = atof((char *) strval);
                     free(strval);
                 }
-- 
2.18.1