--- a/wp/wp-includes/IXR/class-IXR-message.php Tue Oct 22 16:11:46 2019 +0200
+++ b/wp/wp-includes/IXR/class-IXR-message.php Tue Dec 15 13:49:49 2020 +0100
@@ -110,20 +110,28 @@
$chunk_size = apply_filters( 'xmlrpc_chunk_parsing_size', $chunk_size );
$final = false;
+
do {
if (strlen($this->message) <= $chunk_size) {
$final = true;
}
+
$part = substr($this->message, 0, $chunk_size);
$this->message = substr($this->message, $chunk_size);
+
if (!xml_parse($this->_parser, $part, $final)) {
+ xml_parser_free($this->_parser);
+ unset($this->_parser);
return false;
}
+
if ($final) {
break;
}
} while (true);
+
xml_parser_free($this->_parser);
+ unset($this->_parser);
// Grab the error messages, if any
if ($this->messageType == 'fault') {