From 9515f00555ae2a1b03c07b08b8a41e4aa0cd67d5 Mon Sep 17 00:00:00 2001 From: Niels Dossche <7771979+nielsdos@users.noreply.github.com> Date: Mon, 6 Oct 2025 20:01:51 +0200 Subject: [PATCH] Fix one of the xmlSaveNoEmptyTags deprecations This was deprecated in libxml2.15. To keep builds going, change the codea round. There are more occurrences but they require a more sophisticated solution. --- ext/dom/document.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/ext/dom/document.c b/ext/dom/document.c index e48cafbabe9cd..5c99cf56b6c5a 100644 --- a/ext/dom/document.c +++ b/ext/dom/document.c @@ -1608,15 +1608,14 @@ PHP_METHOD(DOMDocument, saveXML) if (options & XML_SAVE_NO_DECL) { converted_options |= XML_SAVE_NO_DECL; } + if (options & LIBXML_SAVE_NOEMPTYTAG) { + converted_options |= XML_SAVE_NO_EMPTY; + } if (format) { converted_options |= XML_SAVE_FORMAT; } - /* Save libxml2 global, override its vaule, and restore after saving. */ - old_xml_save_no_empty_tags = xmlSaveNoEmptyTags; - xmlSaveNoEmptyTags = (options & LIBXML_SAVE_NOEMPTYTAG) ? 1 : 0; /* Encoding is handled from the encoding property set on the document */ xmlSaveCtxtPtr ctxt = xmlSaveToBuffer(buf, (const char *) docp->encoding, converted_options); - xmlSaveNoEmptyTags = old_xml_save_no_empty_tags; if (UNEXPECTED(!ctxt)) { xmlBufferFree(buf); php_error_docref(NULL, E_WARNING, "Could not create save context");