tree data UPDATE check dict insert return
diff --git a/src/tree_data.c b/src/tree_data.c
index 2ab998e..46279a8 100644
--- a/src/tree_data.c
+++ b/src/tree_data.c
@@ -807,8 +807,6 @@
     any->prev = &any->node;
     any->flags = LYD_NEW;
 
-    /* TODO: convert XML/JSON strings into a opaq data tree */
-
     if (use_value) {
         switch (value_type) {
         case LYD_ANYDATA_DATATREE:
@@ -817,7 +815,7 @@
         case LYD_ANYDATA_STRING:
         case LYD_ANYDATA_XML:
         case LYD_ANYDATA_JSON:
-            lydict_insert_zc(schema->module->ctx, (void *)value, &any->value.str);
+            LY_CHECK_ERR_RET(lydict_insert_zc(schema->module->ctx, (void *)value, &any->value.str), free(any), LY_EMEM);
             break;
         case LYD_ANYDATA_LYB:
             any->value.mem = (void *)value;