summaryrefslogtreecommitdiff
path: root/inc/IXR_Library.php
diff options
context:
space:
mode:
Diffstat (limited to 'inc/IXR_Library.php')
-rw-r--r--inc/IXR_Library.php6
1 files changed, 6 insertions, 0 deletions
diff --git a/inc/IXR_Library.php b/inc/IXR_Library.php
index fb11585ca..ae77f2c27 100644
--- a/inc/IXR_Library.php
+++ b/inc/IXR_Library.php
@@ -144,6 +144,12 @@ class IXR_Message {
function parse() {
// first remove the XML declaration
$this->message = preg_replace('/<\?xml(.*)?\?'.'>/', '', $this->message);
+ // workaround for a bug in PHP/libxml2, see http://bugs.php.net/bug.php?id=45996
+ $this->message = str_replace('&lt;', '&#60;', $this->message);
+ $this->message = str_replace('&gt;', '&#62;', $this->message);
+ $this->message = str_replace('&amp;', '&#38;', $this->message);
+ $this->message = str_replace('&apos;', '&#39;', $this->message);
+ $this->message = str_replace('&quot;', '&#34;', $this->message);
if (trim($this->message) == '') {
return false;
}