diff options
Diffstat (limited to 'meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp/0001-all-Drop-xmlRecoverMemory.patch')
-rw-r--r-- | meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp/0001-all-Drop-xmlRecoverMemory.patch | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp/0001-all-Drop-xmlRecoverMemory.patch b/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp/0001-all-Drop-xmlRecoverMemory.patch new file mode 100644 index 0000000000..a3941f345f --- /dev/null +++ b/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp/0001-all-Drop-xmlRecoverMemory.patch @@ -0,0 +1,107 @@ +From 46f13d9929c81ec2340a1a5d48f596b1892c5a81 Mon Sep 17 00:00:00 2001 +From: Jens Georg <mail@jensge.org> +Date: Thu, 4 May 2023 19:14:29 +0200 +Subject: [PATCH] all: Drop xmlRecoverMemory + +use xmlReadMemory, also use NONET flat + +Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> +Upstream-Status: Backport [https://github.com/GNOME/gupnp/commit/80e68995b745a5900eaaa1d0c424d3a9d354e42d] +--- + libgupnp/gupnp-control-point.c | 7 +++++-- + libgupnp/gupnp-service-info.c | 7 +++++-- + libgupnp/gupnp-service-proxy-action.c | 7 +++++-- + libgupnp/gupnp-service-proxy.c | 7 +++++-- + libgupnp/gupnp-service.c | 7 +++++-- + 5 files changed, 25 insertions(+), 10 deletions(-) + +diff --git a/libgupnp/gupnp-control-point.c b/libgupnp/gupnp-control-point.c +index dc04732..99ebda5 100644 +--- a/libgupnp/gupnp-control-point.c ++++ b/libgupnp/gupnp-control-point.c +@@ -608,8 +608,11 @@ got_description_url (SoupSession *session, + xmlDoc *xml_doc; + + /* Parse response */ +- xml_doc = xmlRecoverMemory (msg->response_body->data, +- msg->response_body->length); ++ xml_doc = xmlReadMemory (msg->response_body->data, ++ msg->response_body->length, ++ NULL, ++ NULL, ++ XML_PARSE_NONET | XML_PARSE_RECOVER); + if (xml_doc) { + doc = gupnp_xml_doc_new (xml_doc); + +diff --git a/libgupnp/gupnp-service-info.c b/libgupnp/gupnp-service-info.c +index 9a9f4de..d468801 100644 +--- a/libgupnp/gupnp-service-info.c ++++ b/libgupnp/gupnp-service-info.c +@@ -592,8 +592,11 @@ got_scpd_url (G_GNUC_UNUSED SoupSession *session, + if (SOUP_STATUS_IS_SUCCESSFUL (msg->status_code)) { + xmlDoc *scpd; + +- scpd = xmlRecoverMemory (msg->response_body->data, +- msg->response_body->length); ++ scpd = xmlReadMemory (msg->response_body->data, ++ msg->response_body->length, ++ NULL, ++ NULL, ++ XML_PARSE_NONET | XML_PARSE_RECOVER); + if (scpd) { + introspection = gupnp_service_introspection_new (scpd); + +diff --git a/libgupnp/gupnp-service-proxy-action.c b/libgupnp/gupnp-service-proxy-action.c +index 4d9336c..ef8a808 100644 +--- a/libgupnp/gupnp-service-proxy-action.c ++++ b/libgupnp/gupnp-service-proxy-action.c +@@ -86,8 +86,11 @@ check_action_response (G_GNUC_UNUSED GUPnPServiceProxy *proxy, + } + + /* Parse response */ +- response = xmlRecoverMemory (action->msg->response_body->data, +- action->msg->response_body->length); ++ response = xmlReadMemory (action->msg->response_body->data, ++ action->msg->response_body->length, ++ NULL, ++ NULL, ++ XML_PARSE_NONET | XML_PARSE_RECOVER); + + if (!response) { + if (action->msg->status_code == SOUP_STATUS_OK) { +diff --git a/libgupnp/gupnp-service-proxy.c b/libgupnp/gupnp-service-proxy.c +index 25d5ef6..af2fd46 100644 +--- a/libgupnp/gupnp-service-proxy.c ++++ b/libgupnp/gupnp-service-proxy.c +@@ -1560,8 +1560,11 @@ server_handler (G_GNUC_UNUSED SoupServer *soup_server, + } + + /* Parse the actual XML message content */ +- doc = xmlRecoverMemory (msg->request_body->data, +- msg->request_body->length); ++ doc = xmlReadMemory (msg->request_body->data, ++ msg->request_body->length, ++ NULL, ++ NULL, ++ XML_PARSE_NONET | XML_PARSE_RECOVER); + if (doc == NULL) { + /* Failed */ + g_warning ("Failed to parse NOTIFY message body"); +diff --git a/libgupnp/gupnp-service.c b/libgupnp/gupnp-service.c +index 67b3d43..0ebfb26 100644 +--- a/libgupnp/gupnp-service.c ++++ b/libgupnp/gupnp-service.c +@@ -985,8 +985,11 @@ control_server_handler (SoupServer *server, + *end = '\0'; + + /* Parse action_node */ +- doc = xmlRecoverMemory (msg->request_body->data, +- msg->request_body->length); ++ doc = xmlReadMemory (msg->request_body->data, ++ msg->request_body->length, ++ NULL, ++ NULL, ++ XML_PARSE_NONET | XML_PARSE_RECOVER); + if (doc == NULL) { + soup_message_set_status (msg, SOUP_STATUS_BAD_REQUEST); + |